三个报表:首次签收+缺陷列表

master
hujl 4 years ago
parent 24ff0febfc
commit 197b7cea51

@ -38,7 +38,7 @@ public class medicalOverdueController {
@ResponseBody
@RequestMapping(value = "/medicalOverdueList")
public OffsetLimitPage medicalOverdueList(HttpServletRequest request, HttpServletResponse response, Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit) {
OffsetLimitPage result = archiveMasterService.selectOverdue(archiveMasterVo, offset, limit);
OffsetLimitPage result =archiveMasterService.selectOverdue(archiveMasterVo, offset, limit);
return result;
}
@ -54,10 +54,10 @@ public class medicalOverdueController {
@RequestMapping(value = "/exportExcel")
public void exportExcel(HttpServletResponse response, Archive_Master_Vo archiveMasterVo) throws Exception {
response.setContentType("application/vnd.ms-excel;charset=UTF-8");
String[] header = {"住院号","住院次数","姓名","入院科室","出院科室","出院日期","科室提交","初审人","主管医生","是否死亡","间隔天数","超期天数"};
String[] fileNames = {"inpNo","visitId","name","deptAdmissionTo","deptName","dischargeDateTime","createTime","firstInstance","doctorInCharge","deathFlag","overdue","score"};
String[] header = {"住院号","住院次数","姓名","入院科室","出院科室","出院日期","初审日期","初审人","主管医生","是否死亡","间隔天数","超期天数"};
String[] fileNames = {"inpNo","visitId","name","deptAdmissionTo","deptName","dischargeDateTime","handleTime","handleName","doctorInCharge","deathFlag","diffDay","overdue"};
//文件名
String fileName = "首次签收超期列表" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
String fileName = "初次提交归档列表" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
//构造excel的数据overdueDays
List<Archive_Master_Vo> list = archiveMasterService.selectOverdue(archiveMasterVo);
@ -116,4 +116,83 @@ public class medicalOverdueController {
ThreadExcelUtils utils = new ThreadExcelUtils(fileName, "", header, fileNames);
String result=utils.exportExcelToFilePath(response,utils.listConvert(list));
}
@ResponseBody
@RequestMapping(value = "/medicalOverdueList2")
public OffsetLimitPage medicalOverdueList2(HttpServletRequest request, HttpServletResponse response, Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit) {
OffsetLimitPage result =archiveMasterService.selectOverdue2(archiveMasterVo, offset, limit);
return result;
}
@ResponseBody
@RequestMapping(value = "/exportExcel2")
public void exportExcel2(HttpServletResponse response, Archive_Master_Vo archiveMasterVo) throws Exception {
response.setContentType("application/vnd.ms-excel;charset=UTF-8");
String[] header = {"住院号","住院次数","姓名","入院科室","出院科室","出院日期","退回日期","退回人","主管医生","是否死亡","间隔天数","超期天数"};
String[] fileNames = {"inpNo","visitId","name","deptAdmissionTo","deptName","dischargeDateTime","handleTime","handleName","doctorInCharge","deathFlag","diffDay","overdue"};
//文件名
String fileName = "住院返修病历列表" + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".xls";
//构造excel的数据overdueDays
List<Archive_Master_Vo> list = archiveMasterService.selectOverdue2(archiveMasterVo);
List<MedicalRecordHomepageCache> medicalRecordHomepageCacheList = null;
if(archiveMasterVo.getOverdueDays()!=null && archiveMasterVo.getOverdueDays()!="") {
if (list != null && list.size() > 0) {
for (int i = 0; i < list.size(); i++) {
if (list.get(i).getOverdue() != null && !list.get(i).getOverdue().equals("")) {
int score = Integer.parseInt(list.get(i).getOverdue()) - Integer.parseInt(archiveMasterVo.getOverdueDays());
list.get(i).setScore("" + score);
}
if (list.get(i).getDeathFlag() != null && !list.get(i).getDeathFlag().equals("")){
if (list.get(i).getDeathFlag().equals("0")){
list.get(i).setDeathFlag("否");
}else {
list.get(i).setDeathFlag("是");
}
}
//2021-09-17
String doctorInChargeInHomePage = "";
String directorDoctorInHomePage = "";
//根据masterId查出该条首页缓存表中content内容
MedicalRecordHomepageCacheExample medicalRecordHomepageCacheExample = new MedicalRecordHomepageCacheExample();
MedicalRecordHomepageCacheExample.Criteria criteria = medicalRecordHomepageCacheExample.createCriteria();
if (!StringUtils.isEmpty(list.get(i).getId())){
criteria.andMasterIdEqualTo(list.get(i).getId());
}
medicalRecordHomepageCacheList = medicalRecordHomepageCacheMapper.selectByExample(medicalRecordHomepageCacheExample);
if (medicalRecordHomepageCacheList.size()>0){
//查出content
String content = medicalRecordHomepageCacheList.get(0).getContent();
//根据content内容获取首页中主治医生name、主任副主任医生name
doctorInChargeInHomePage = JSONObject.parseObject(content).getJSONObject("commonTable").getString("yZY054");
directorDoctorInHomePage = JSONObject.parseObject(content).getJSONObject("commonTable1").getString("yZY052");
}
//重新赋值主管医生、主任(副主任)医生
if (doctorInChargeInHomePage != null && !doctorInChargeInHomePage.equals("")){
list.get(i).setDoctorInCharge(doctorInChargeInHomePage);
}else {
list.get(i).setDoctorInCharge("首页尚未填写主治医生!");
}
if (directorDoctorInHomePage != null && !directorDoctorInHomePage.equals("")){
list.get(i).setFirstInstance(directorDoctorInHomePage);
}else {
list.get(i).setFirstInstance("首页尚未填写主任(副主任)医生!");
}
//2021-09-17
}
}
}
ThreadExcelUtils utils = new ThreadExcelUtils(fileName, "", header, fileNames);
String result=utils.exportExcelToFilePath(response,utils.listConvert(list));
}
}

@ -132,9 +132,21 @@ public interface Archive_MasterMapper {
*/
List<Archive_Master_Vo> selectHandleDetail(Archive_Master_Vo record);
//查询超期天数列表
/**
* -
* @param record
* @return
*/
List<Archive_Master_Vo> selectOverdue(Archive_Master_Vo record);
/**
* -
* @param record
* @return
*/
List<Archive_Master_Vo> selectOverdue2(Archive_Master_Vo record);
//封存日志
List<Archive_Master_Vo> selectByFollowinglog(Archive_Master_Vo record);

@ -54,4 +54,12 @@ public interface Archive_Master_FollowingMapper {
* @return
*/
List<Archive_Master_Following> selectByMasterId(HashMap<String, Object> param);
/**
* 退remark退
* @param archiveMasterFollowing
* @return
*/
List<Archive_Master_Following> selByCol(Archive_Master_Following archiveMasterFollowing);
}

@ -106,9 +106,36 @@ public interface Emr_Fault_DetailMapper {
List<Emr_Fault_Vo> selectStorageByCol(Emr_Fault_Vo emrFaultVo);
/**
*
*
* @param emrFaultVo
* @return
*/
List<Emr_Fault_Vo> getQualityControlList(Emr_Fault_Vo emrFaultVo);
/**
* 退
* @param emrFaultVo
* @return
*/
List<Emr_Fault_Vo> masterTotalList(Emr_Fault_Vo emrFaultVo);
/**
* 退
* @param emrFaultVo
* @return
*/
List<Emr_Fault_Vo> getQualityControlList(Emr_Fault_Vo emrFaultVo);//获取质控缺陷评分列表
List<Emr_Fault_Vo> faultBackScoreList(Emr_Fault_Vo emrFaultVo);
/**
*
* @param emrFaultVo
* @return
*/
List<Emr_Fault_Vo> selByCol(Emr_Fault_Vo emrFaultVo);
}

@ -110,6 +110,9 @@ public class Archive_Master_Vo {
private String transferDept;
//2021-02-02新增
private String diffDay;//间隔天数
//2021-02-02新增
private String overdue;//超期天数
@ -235,6 +238,14 @@ public class Archive_Master_Vo {
this.createTime = createTime;
}
public String getDiffDay() {
return diffDay;
}
public void setDiffDay(String diffDay) {
this.diffDay = diffDay;
}
public String getOverdue() {
return overdue;
}

@ -94,6 +94,18 @@ public class Emr_Fault_Vo {
private String backTime;
//退回次数
private String backNum;
//退回费用
private String backFee;
//退回总次数
private String totalBackNum;
//退回总费用
private String totalBackFee;
public String getBackTime() {
return backTime;
}
@ -429,6 +441,38 @@ public class Emr_Fault_Vo {
public void setArchiveState(String archiveState) {
this.archiveState = archiveState;
}
public String getBackNum() {
return backNum;
}
public void setBackNum(String backNum) {
this.backNum = backNum == null ? null : backNum.trim();
}
public String getBackFee() {
return backFee;
}
public void setBackFee(String backFee) {
this.backFee = backFee;
}
public String getTotalBackNum() {
return totalBackNum;
}
public void setTotalBackNum(String totalBackNum) {
this.totalBackNum = totalBackNum;
}
public String getTotalBackFee() {
return totalBackFee;
}
public void setTotalBackFee(String totalBackFee) {
this.totalBackFee = totalBackFee;
}
}

@ -178,7 +178,7 @@ public interface Archive_MasterService {
OffsetLimitPage selectHandleDetail(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit);
/**
*
*
*
* @param archiveMasterVo
* @return
@ -186,14 +186,38 @@ public interface Archive_MasterService {
List<Archive_Master_Vo> selectOverdue(Archive_Master_Vo archiveMasterVo);
/**
*
*
*
* @param archiveMasterVo
* @return
*/
OffsetLimitPage selectOverdue(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit);
//封存日志
/**
*
*
* @param archiveMasterVo
* @return
*/
List<Archive_Master_Vo> selectOverdue2(Archive_Master_Vo archiveMasterVo);
/**
*
*
* @param archiveMasterVo
* @return
*/
OffsetLimitPage selectOverdue2(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit);
/**
*
* @param record
* @param offset
* @param limit
* @return
*/
OffsetLimitPage selectByFollowinglog(Archive_Master_Vo record, Integer offset, Integer limit);
/**

@ -1,11 +1,19 @@
package com.emr.service;
import com.emr.entity.Archive_Master_Following;
import com.emr.entity.Emr_Fault_Vo;
import java.util.HashMap;
import java.util.List;
public interface Archive_Master_FollowingService {
int insertSelective(Archive_Master_Following record);
List<Archive_Master_Following> selectByMasterId(Integer roleId,String masterId);
/**
* 退
* @param archiveMasterFollowing
* @return
*/
List<Archive_Master_Following> selByCol(Archive_Master_Following archiveMasterFollowing);
}

@ -118,6 +118,49 @@ public interface Emr_Fault_DetailService {
* @return
*/
OffsetLimitPage getQualityControlList(Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit);
/**
* 退
* @param emrFaultVo
* @return
*/
List<Emr_Fault_Vo> masterTotalList(Emr_Fault_Vo emrFaultVo);
/**
* 退
* @param emrFaultVo
* @return
*/
OffsetLimitPage masterTotalList(Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit);
/**
* 退
* @param emrFaultVo
* @return
*/
List<Emr_Fault_Vo> faultBackScoreList(Emr_Fault_Vo emrFaultVo);
/**
*
* @param emrFaultVo
* @return
*/
OffsetLimitPage faultBackScoreList(Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit);
/**
*
* @param emrFaultVo
* @return
*/
List<Emr_Fault_Vo> selByCol(Emr_Fault_Vo emrFaultVo);
/**
*
* @param emrFaultVo
* @return
*/
OffsetLimitPage selByCol(Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit);
}

@ -421,6 +421,54 @@ public class Archive_MasterServiceImpl implements Archive_MasterService {
return new OffsetLimitPage((Page) list);
}
@Override
public List<Archive_Master_Vo> selectOverdue2(Archive_Master_Vo archiveMasterVo) {
List<Archive_Master_Vo> list = archiveMasterMapper.selectOverdue2(archiveMasterVo);
return list;
}
@Override
public OffsetLimitPage selectOverdue2(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Archive_Master_Vo> list = archiveMasterMapper.selectOverdue2(archiveMasterVo);
List<MedicalRecordHomepageCache> medicalRecordHomepageCacheList = null;
for (Archive_Master_Vo archive_master : list) {
String doctorInChargeInHomePage = "";
String directorDoctorInHomePage = "";
//根据masterId查出该条首页缓存表中content内容
MedicalRecordHomepageCacheExample medicalRecordHomepageCacheExample = new MedicalRecordHomepageCacheExample();
MedicalRecordHomepageCacheExample.Criteria criteria = medicalRecordHomepageCacheExample.createCriteria();
if (!StringUtils.isEmpty(archive_master.getId())){
criteria.andMasterIdEqualTo(archive_master.getId());
}
medicalRecordHomepageCacheList = medicalRecordHomepageCacheMapper.selectByExample(medicalRecordHomepageCacheExample);
if (medicalRecordHomepageCacheList.size()>0){
//查出content
String content = medicalRecordHomepageCacheList.get(0).getContent();
//根据content内容获取首页中主治医生name、主任副主任医生name
doctorInChargeInHomePage = JSONObject.parseObject(content).getJSONObject("commonTable").getString("yZY054");
directorDoctorInHomePage = JSONObject.parseObject(content).getJSONObject("commonTable1").getString("yZY052");
}
//重新赋值主管医生、主任(副主任)医生
if (doctorInChargeInHomePage != null && !doctorInChargeInHomePage.equals("")){
archive_master.setDoctorInCharge(doctorInChargeInHomePage);
}else {
archive_master.setDoctorInCharge("首页尚未填写主治医生!");
}
if (directorDoctorInHomePage != null && !directorDoctorInHomePage.equals("")){
archive_master.setFirstInstance(directorDoctorInHomePage);
}else {
archive_master.setFirstInstance("首页尚未填写主任(副主任)医生!");
}
}
return new OffsetLimitPage((Page) list);
}
@Override
public OffsetLimitPage selectByFollowinglog(Archive_Master_Vo record, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);

@ -2,6 +2,7 @@ package com.emr.service.ipml;
import com.emr.dao.Archive_Master_FollowingMapper;
import com.emr.entity.Archive_Master_Following;
import com.emr.entity.Emr_Fault_Vo;
import com.emr.service.Archive_Master_FollowingService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -30,4 +31,11 @@ public class Archive_Master_FollowingServiceImpl implements Archive_Master_Follo
}
return archive_master_followingMapper.selectByMasterId(param);
}
@Override
public List<Archive_Master_Following> selByCol(Archive_Master_Following archiveMasterFollowing) {
return archive_master_followingMapper.selByCol(archiveMasterFollowing);
}
}

@ -8,6 +8,7 @@ package com.emr.service.ipml;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.emr.dao.Archive_Master_FollowingMapper;
import com.emr.dao.Emr_Fault_DetailMapper;
import com.emr.entity.*;
import com.emr.service.Emr_DictionaryService;
@ -21,7 +22,10 @@ import com.google.common.collect.Maps;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -39,6 +43,8 @@ public class Emr_Fault_DetailServiceImpl implements Emr_Fault_DetailService {
@Autowired
private PowerUserService powerUserService;
@Autowired
private Archive_Master_FollowingMapper archiveMasterFollowingMapper;
/**
*
* @param emrFaultVo
@ -249,6 +255,269 @@ public class Emr_Fault_DetailServiceImpl implements Emr_Fault_DetailService {
}
return new OffsetLimitPage((Page) list);
}
@Override
public List<Emr_Fault_Vo> masterTotalList(Emr_Fault_Vo emrFaultVo) {
List<Emr_Fault_Vo> list= emrFaultDetailMapper.masterTotalList(emrFaultVo);
JSONArray powerUsers = powerUserService.getPowerUserList("1");
List<JSONObject> powerUserList = JSONArray.parseArray(powerUsers.toJSONString(), JSONObject.class);
if (powerUserList != null){
Map<String,JSONObject> mappedMovies = Maps.uniqueIndex(powerUserList, new Function<JSONObject,String>() {
@Override
public String apply(JSONObject temp) {
return temp.getString("userName");
}});
for (Emr_Fault_Vo emr_fault_vo : list) {
//主管医生
JSONObject userInfo = mappedMovies.get(emr_fault_vo.getDoctorInCharge());
if (userInfo==null){
emr_fault_vo.setDoctorInCharge(emr_fault_vo.getDoctorInCharge());
}else {
emr_fault_vo.setDoctorInCharge(userInfo.getString("name"));
}
//退回人
userInfo = mappedMovies.get(emr_fault_vo.getCreater());
if (userInfo==null){
emr_fault_vo.setCreater(emr_fault_vo.getCreater());
}else {
emr_fault_vo.setCreater(userInfo.getString("name"));
}
}
}
return list;
}
@Override
public OffsetLimitPage masterTotalList(Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Emr_Fault_Vo> list = emrFaultDetailMapper.masterTotalList(emrFaultVo);
if(list!=null && list.size()>0){
JSONArray powerUsers = powerUserService.getPowerUserList("1");
List<JSONObject> powerUserList = JSONArray.parseArray(powerUsers.toJSONString(), JSONObject.class);
if (powerUserList != null){
Map<String,JSONObject> mappedMovies = Maps.uniqueIndex(powerUserList, new Function<JSONObject,String>() {
@Override
public String apply(JSONObject temp) {
return temp.getString("userName");
}});
for (Emr_Fault_Vo emr_fault_vo : list) {
JSONObject userInfo = mappedMovies.get(emr_fault_vo.getDoctorInCharge());
if (userInfo==null){
emr_fault_vo.setDoctorInCharge(emr_fault_vo.getDoctorInCharge());
}else {
emr_fault_vo.setDoctorInCharge(userInfo.getString("name"));
}
userInfo = mappedMovies.get(emr_fault_vo.getCreater());
if (userInfo==null){
emr_fault_vo.setCreater(emr_fault_vo.getCreater());
}else {
emr_fault_vo.setCreater(userInfo.getString("name"));
}
}
}
}
return new OffsetLimitPage((Page) list);
}
@Override
public List<Emr_Fault_Vo> faultBackScoreList(Emr_Fault_Vo emrFaultVo) {
List<Emr_Fault_Vo> list= emrFaultDetailMapper.faultBackScoreList(emrFaultVo);
if(list!=null && list.size()>0){
Archive_Master_Following archiveMasterFollowing=new Archive_Master_Following();
archiveMasterFollowing.setFollowingType("9");
//根据条件查询跟随流程记录的退回次数排序列表remark暂存退回次数
List<Archive_Master_Following> followList =archiveMasterFollowingMapper.selByCol(archiveMasterFollowing);
if(followList!=null && followList.size()>0){
//Boolean bol=false;
JSONArray powerUsers = powerUserService.getPowerUserList("1");
List<JSONObject> powerUserList = JSONArray.parseArray(powerUsers.toJSONString(), JSONObject.class);
if (powerUserList != null){
Map<String,JSONObject> mappedMovies = Maps.uniqueIndex(powerUserList, new Function<JSONObject,String>() {
@Override
public String apply(JSONObject temp) {
return temp.getString("userName");
}});
for (Emr_Fault_Vo emr_fault_vo : list) {
/*JSONObject userInfo = mappedMovies.get(emr_fault_vo.getDoctorInCharge());
if (userInfo==null){
emr_fault_vo.setDoctorInCharge(emr_fault_vo.getDoctorInCharge());
}else {
emr_fault_vo.setDoctorInCharge(userInfo.getString("name"));
}*/
JSONObject userInfo = mappedMovies.get(emr_fault_vo.getCreater());
if (userInfo==null){
emr_fault_vo.setCreater(emr_fault_vo.getCreater());
}else {
emr_fault_vo.setCreater(userInfo.getString("name"));
}
//退回次数
for(int i=0;i<followList.size();i++){
if(emr_fault_vo.getArchiveDetailId().equals(followList.get(i).getMasterId()) && emr_fault_vo.getCreateTime()!=null && emr_fault_vo.getCreateTime()!="" && followList.get(i).getHandleTime()!=null && followList.get(i).getHandleTime()!="") {
//a早于b返回true
try {
if (compare(emr_fault_vo.getCreateTime(), followList.get(i).getHandleTime())) {
emr_fault_vo.setBackNum(followList.get(i).getRemark());
emr_fault_vo.setStartDateTo(followList.get(i-1).getHandleTime());
emr_fault_vo.setEndDateTo(followList.get(i).getHandleTime());
break;
}
} catch (ParseException e) {
e.printStackTrace();
}
}else{
emr_fault_vo.setBackNum("异常");
}
}
}
}
}else{
//跟随流程表必须有病案室退回科主任记录否则list为空
list=null;
}
}
return list;
}
@Override
public OffsetLimitPage faultBackScoreList(Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Emr_Fault_Vo> list = emrFaultDetailMapper.faultBackScoreList(emrFaultVo);
if(list!=null && list.size()>0){
Archive_Master_Following archiveMasterFollowing=new Archive_Master_Following();
archiveMasterFollowing.setFollowingType("9");
//根据条件查询跟随流程记录的退回次数排序列表remark暂存退回次数
List<Archive_Master_Following> followList =archiveMasterFollowingMapper.selByCol(archiveMasterFollowing);
if(followList!=null && followList.size()>0){
//Boolean bol=false;
JSONArray powerUsers = powerUserService.getPowerUserList("1");
List<JSONObject> powerUserList = JSONArray.parseArray(powerUsers.toJSONString(), JSONObject.class);
if (powerUserList != null){
Map<String,JSONObject> mappedMovies = Maps.uniqueIndex(powerUserList, new Function<JSONObject,String>() {
@Override
public String apply(JSONObject temp) {
return temp.getString("userName");
}});
for (Emr_Fault_Vo emr_fault_vo : list) {
/*JSONObject userInfo = mappedMovies.get(emr_fault_vo.getDoctorInCharge());
if (userInfo==null){
emr_fault_vo.setDoctorInCharge(emr_fault_vo.getDoctorInCharge());
}else {
emr_fault_vo.setDoctorInCharge(userInfo.getString("name"));
}*/
JSONObject userInfo = mappedMovies.get(emr_fault_vo.getCreater());
if (userInfo==null){
emr_fault_vo.setCreater(emr_fault_vo.getCreater());
}else {
emr_fault_vo.setCreater(userInfo.getString("name"));
}
//退回次数
for(int i=0;i<followList.size();i++){
if(emr_fault_vo.getArchiveDetailId().equals(followList.get(i).getMasterId()) && emr_fault_vo.getCreateTime()!=null && emr_fault_vo.getCreateTime()!="" && followList.get(i).getHandleTime()!=null && followList.get(i).getHandleTime()!="") {
//a早于b返回true
try {
if (compare(emr_fault_vo.getCreateTime(), followList.get(i).getHandleTime())) {
emr_fault_vo.setBackNum(followList.get(i).getRemark());
emr_fault_vo.setStartDateTo(followList.get(i-1).getHandleTime());
emr_fault_vo.setEndDateTo(followList.get(i).getHandleTime());
break;
}
} catch (ParseException e) {
e.printStackTrace();
}
}else{
emr_fault_vo.setBackNum("异常");
}
}
}
}
}else{
//跟随流程表必须有病案室退回科主任记录否则list为空
list=null;
}
}
return new OffsetLimitPage((Page) list);
}
@Override
public List<Emr_Fault_Vo> selByCol(Emr_Fault_Vo emrFaultVo) {
List<Emr_Fault_Vo> list=emrFaultDetailMapper.selByCol(emrFaultVo);
JSONArray powerUsers = powerUserService.getPowerUserList("1");
List<JSONObject> powerUserList = JSONArray.parseArray(powerUsers.toJSONString(), JSONObject.class);
if (powerUserList != null){
Map<String,JSONObject> mappedMovies = Maps.uniqueIndex(powerUserList, new Function<JSONObject,String>() {
@Override
public String apply(JSONObject temp) {
return temp.getString("userName");
}});
for (Emr_Fault_Vo emr_fault_vo : list) {
//主管医生
JSONObject userInfo = mappedMovies.get(emr_fault_vo.getDoctorInCharge());
//创建人
userInfo = mappedMovies.get(emr_fault_vo.getCreater());
if (userInfo==null){
emr_fault_vo.setCreater(emr_fault_vo.getCreater());
}else {
emr_fault_vo.setCreater(userInfo.getString("name"));
}
}
}
return list;
}
@Override
public OffsetLimitPage selByCol(Emr_Fault_Vo emrFaultVo, Integer offset, Integer limit) {
PageHelper.offsetPage(offset, limit);
List<Emr_Fault_Vo> list = emrFaultDetailMapper.selByCol(emrFaultVo);
JSONArray powerUsers = powerUserService.getPowerUserList("1");
List<JSONObject> powerUserList = JSONArray.parseArray(powerUsers.toJSONString(), JSONObject.class);
if (powerUserList != null){
Map<String,JSONObject> mappedMovies = Maps.uniqueIndex(powerUserList, new Function<JSONObject,String>() {
@Override
public String apply(JSONObject temp) {
return temp.getString("userName");
}});
for (Emr_Fault_Vo emr_fault_vo : list) {
JSONObject userInfo = mappedMovies.get(emr_fault_vo.getDoctorInCharge());
//创建人
userInfo = mappedMovies.get(emr_fault_vo.getCreater());
if (userInfo==null){
emr_fault_vo.setCreater(emr_fault_vo.getCreater());
}else {
emr_fault_vo.setCreater(userInfo.getString("name"));
}
}
}
return new OffsetLimitPage((Page) list);
}
public boolean compare(String time1,String time2) throws ParseException{
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date a=sdf.parse(time1);
Date b=sdf.parse(time2);
//a早于b返回true
if(a.before(b)){
return true;
}else{
return false;
}
}
}

@ -5,6 +5,7 @@ dataBaseName=DB_PrivilegeManagement_GYFY
POWER_PORT=9001
jdbc.url=jdbc\:sqlserver\://${POWER_IP}:1433;databaseName=${dataBaseName}
jdbc.driver=com.microsoft.sqlserver.jdbc.SQLServerDriver
#hibernate config
@ -16,14 +17,16 @@ hibernate.hbm2ddl.auto=update
hibernate.current_session_context_class=thread
hibernate.jdbc.batch_size=50
hibernate.enable_lazy_load_no_trans=true
#\u56FE\u7247\u5730\u5740
pictureUrl=C:\\Users\\Administrator\\Desktop\\test\\uploadImage
##\u56FE\u7247\u5730\u5740
pictureUrl=Z:\\test\\uploadImage
#\u672C\u5730\u81EA\u52A8\u751F\u6210PDF\u5730\u5740D:\tesst\autoPdf
autoPdfUrl=C:/Users/Administrator/Desktop/test/autoPdf
autoPdfUrl=D:/test/autoPdf
#\u672C\u5730\u4E0A\u4F20PDF\u5730\u5740
pdfUrl=C:\\Users\\Administrator\\Desktop\\test\\loadPdf
pdfUrl=Z:\\test\\loadPdf
#PDF\u6587\u4EF6\u4E0D\u5B58\u5728\u6216\u635F\u574F\u5217\u8868\u5730\u5740
pdfErrorUrl=C:\\Users\\Administrator\\Desktop\\test\\error\\
pdfErrorUrl=Z:\\test\\error\\
#\u8D85\u671F\u5929\u6570
expired=7
#\u6B7B\u4EA1\u8D85\u671F\u5929\u6570
@ -34,6 +37,8 @@ upperLimit=3
#\u7B7E\u6536\u5217\u8868 \u4E0A\u9650\u5355\u4F4D\u53CA\u4E0A\u9650\u6570\u503C[year\month\day],\u90FD\u4E0D\u9650\u5236\u5219\u4E3A\u7A7A
sign_dateType=month
sign_upperLimit=6
#\u7F3A\u9677\u5217\u8868
backFee=30
#\u539F\u56E0
recallReason=\u533B\u9662\u9700\u8981\u8FD9\u4EFD\u6587\u6863

@ -136,4 +136,33 @@
and following_type in (1,2,3,4,5,6,7)
</if>
</select>
<select id="selByCol" parameterType="com.emr.entity.Archive_Master_Following" resultMap="BaseResultMap">
select id,master_id ,convert(varchar,handle_time,120) handle_time ,handle_id,handle_name,following_type,RowNum remark from (
select ROW_NUMBER() over(partition by master_id order by handle_time asc) RowNum
,Archive_Master_Following.*
from Archive_Master_Following
<where> 1=1
<if test="followingType!= null and followingType!= ''">
and following_type in
<foreach item="item" collection="followingType.split(',')" open="(" separator="," close=")">
#{item}
</foreach>
</if>
</where>
) as t1
<where> 1=1
<if test="masterId != null and masterId != ''">
and master_id = #{masterId,jdbcType=NVARCHAR}
</if>
<if test="handleTime != null and handleTime != ''">
and CONVERT(VARCHAR(20),handle_time,23) = #{handleTime,jdbcType=NVARCHAR}
</if>
<if test="handleId != null and handleId != ''">
and CONVERT(VARCHAR(20),handle_id,23) = #{handleId,jdbcType=NVARCHAR}
</if>
<if test="handleName != null and handleName != ''">
and CONVERT(VARCHAR(20),handle_name,23) = #{handleName,jdbcType=NVARCHAR}
</if>
</where>
</select>
</mapper>
Loading…
Cancel
Save