From 5ab6075b69ff7db8e250d67fc17cf53039dd8476 Mon Sep 17 00:00:00 2001 From: landong2015 Date: Wed, 14 Dec 2016 17:40:27 +0800 Subject: [PATCH] New changelist --- .../web/facade/PremaritalCheckupFacade.java | 822 ++++++++++++++++++++- 1 file changed, 816 insertions(+), 6 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java index 00a7601..86891c0 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java @@ -12,13 +12,16 @@ import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.BaseResponse; import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.common.utils.ExcelUtil; import com.lyms.platform.common.utils.SystemConfig; import com.lyms.platform.operate.web.request.PremaritalCheckupAddRequest; import com.lyms.platform.operate.web.request.PremaritalCheckupQueryRequest; import com.lyms.platform.operate.web.result.PremaritalCheckupHistoryResult; import com.lyms.platform.operate.web.utils.CommonsHelper; +import com.lyms.platform.operate.web.utils.FunvCommonUtil; import com.lyms.platform.permission.model.Organization; import com.lyms.platform.permission.service.OrganizationService; +import com.lyms.platform.pojo.BasicConfig; import com.lyms.platform.pojo.PremaritalCheckup; import com.lyms.platform.pojo.ResidentsArchiveModel; import com.lyms.platform.query.PremaritalCheckupQuery; @@ -164,7 +167,7 @@ public class PremaritalCheckupFacade { * @param request * @return */ - public BaseListResponse queryPremaritalCheckup(PremaritalCheckupQueryRequest request) { + public BaseListResponse queryPremaritalCheckup(PremaritalCheckupQueryRequest request,Integer userId) { List parentIds = null; @@ -192,6 +195,13 @@ public class PremaritalCheckupFacade { query.setNeed("y"); query.setYn(YnEnums.YES.getId()); + String hospital = autoMatchFacade.getHospitalId(userId); + if (StringUtils.isNotEmpty(hospital)){ + query.setHospitalId(hospital); + }else { + query.setHospitalId("-1"); + } + query.setYiXueYiJian(request.getYiXueYiJian()); if (StringUtils.isNotEmpty(request.getPremaritalUpTime())) { @@ -509,21 +519,63 @@ public class PremaritalCheckupFacade { HttpServletResponse response){ OutputStream out = null; List> list = new ArrayList<>(); - + String hospital = autoMatchFacade.getHospitalId(userId); try { + List parentIds = null; + + //用姓名和联系方式查询到的居民建档ID + if (StringUtils.isNotEmpty(request.getUsername()) || StringUtils.isNotEmpty(request.getPhone()) || StringUtils.isNotEmpty(request.getCardNo())) { + ResidentsArchiveQuery archiveQuery = new ResidentsArchiveQuery(); + archiveQuery.setYn(YnEnums.YES.getId()); + archiveQuery.setUsername(request.getUsername()); + archiveQuery.setCertificateNum(request.getCardNo()); + archiveQuery.setPhone(request.getPhone()); + archiveQuery.setHospitalId(hospital); + List modelList = residentsArchiveService.queryResident(archiveQuery); + parentIds = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(modelList)) { + for (ResidentsArchiveModel model : modelList) { + parentIds.add(model.getId()); + } + }else { + parentIds.add("-1"); + } + } PremaritalCheckupQuery query = new PremaritalCheckupQuery(); + query.setPage(request.getPage()); + query.setLimit(request.getLimit()); + query.setNeed("y"); query.setYn(YnEnums.YES.getId()); - String hospitalId = autoMatchFacade.getHospitalId(userId); - query.setHospitalId(hospitalId); - if (StringUtils.isNotEmpty(request.getPremaritalUpTime())){ + query.setYiXueYiJian(request.getYiXueYiJian()); + if (StringUtils.isNotEmpty(request.getPremaritalUpTime())) { + String[] dates = request.getPremaritalUpTime().split(" - "); + query.setPremaritalUpTimeStart(DateUtil.parseYMD(dates[0])); + if (dates.length >= 2) { + Date date = DateUtil.parseYMD(dates[1]); + if (null != date) { + long d = date.getTime() + 86398000; + date = new Date(d); + } + query.setPremaritalUpTimeEnd(date); + } } + query.setSexType(request.getSexType()); + if (parentIds!=null) { + query.setParentIds(parentIds); + } + query.setHospitalId(hospital); - + List data = premaritalCheckupService.queryPremaritalCheckup(query); + if (request.getSexType()==1){ + womenExport(out,list,data,response); + }else if (request.getSexType()==2){ + menExport(out,list,data,response); + } }catch (Exception e){ e.printStackTrace(); } @@ -531,4 +583,762 @@ public class PremaritalCheckupFacade { } + //导出女性婚前检查 + public void womenExport(OutputStream out,List> list,List data,HttpServletResponse response){ + int one = 1; + int two = 2; + int three = 3; + if (CollectionUtils.isNotEmpty(data)) { + try { + for (PremaritalCheckup checkup : data) { + Map map = new HashMap<>(); + if (checkup.getSexType() == one) { + + String username = ""; + String phone = ""; + Integer age = null; + + if (StringUtils.isNotEmpty(checkup.getParentId())){ + ResidentsArchiveModel archiveModel = residentsArchiveService.getResident(checkup.getParentId()); + if (archiveModel!=null && archiveModel.getYn()==YnEnums.YES.getId()){ + username = archiveModel.getUsername(); + phone = archiveModel.getPhone(); + if (StringUtils.isNotEmpty(archiveModel.getBirthday())){ + age = DateUtil.getAge(DateUtil.parseYMD(archiveModel.getBirthday())); + } + } + } + map.put("username", username); + map.put("phone", phone); + map.put("age", age); + + //医院名称 + if (StringUtils.isNotEmpty(checkup.getHospitalId())) { + Organization organization = organizationService.getOrganization(Integer.valueOf(checkup.getHospitalId())); + if (organization != null && organization.getYn() == YnEnums.YES.getId()) { + map.put("hospital", organization.getName()); + } + } + map.put("premaritalUpTime", DateUtil.getYmd(checkup.getPremaritalUpTime())); + map.put("certificateTypeId", getBaseicConfigByid(checkup.getCertificateTypeId())); + map.put("certificateNum", checkup.getCertificateTypeId()); + map.put("vcCardNo", checkup.getVcCardNo()); + map.put("sexType", "女"); + if (checkup.getDeliverStatus()!=null && checkup.getDeliverStatus() == one) { + map.put("deliverStatus", "提供"); + } else { + map.put("deliverStatus", "未提供"); + } + map.put("spouseName", checkup.getSpouseName()); + map.put("spouseCertificateTypeId", getBaseicConfigByid(checkup.getSpouseCertificateTypeId())); + map.put("spouseCertificateNum", checkup.getSpouseCertificateNum()); + map.put("isBloodshed", FunvCommonUtil.havaOrNOInteger(checkup.getIsBloodshed(), one)); + map.put("bloodshed", checkup.getBloodshed()); + map.put("menarcheAge", checkup.getMenarcheAge()); + map.put("menstrualCycle", checkup.getMenstrualCycle()); + map.put("menstrualAmount", checkup.getMenstrualAmount()); + map.put("lastMenses", checkup.getLastMenses()); + map.put("menorrhalgia", FunvCommonUtil.havaOrNOString(checkup.getMenorrhalgia(), one)); + map.put("renLiu", checkup.getRenLiu()); + map.put("maritalHistory", FunvCommonUtil.havaOrNOInteger(checkup.getMaritalHistory(), one)); + map.put("sangOu", FunvCommonUtil.havaOrNOInteger(checkup.getSangOu(), three)); + map.put("liYi", FunvCommonUtil.havaOrNOInteger(checkup.getLiYi(), three)); + map.put("childrenNum", checkup.getChildrenNum()); + map.put("nextOfKin", FunvCommonUtil.havaOrNOInteger(checkup.getNextOfKin(), one)); + map.put("parents", FunvCommonUtil.havaOrNOInteger(checkup.getParents(), three)); + map.put("grandparent", FunvCommonUtil.havaOrNOInteger(checkup.getGrandparent(), three)); + map.put("maternalGrandparents", FunvCommonUtil.havaOrNOInteger(checkup.getMaternalGrandparents(), three)); + map.put("jingShenZhuangTai", FunvCommonUtil.havaOrNOInteger(checkup.getJingShenZhuangTai(), two)); + map.put("jingShenZhuangTaiDetails", checkup.getJingShenZhuangTaiDetails()); + map.put("yuYanNengLi", FunvCommonUtil.havaOrNOInteger(checkup.getYuYanNengLi(), two)); + map.put("yuYanNengLiDetails", checkup.getYuYanNengLiDetails()); + map.put("teShuMianRong", FunvCommonUtil.havaOrNOInteger(checkup.getTeShuMianRong(), two)); + map.put("teShuMianRongDetails", checkup.getTeShuMianRongDetails()); + map.put("teShuTiTai", FunvCommonUtil.havaOrNOInteger(checkup.getTeShuTiTai(), two)); + map.put("teShuTiTaiDetails", checkup.getTeShuTiTaiDetails()); + map.put("height", checkup.getHeight()); + map.put("weight", checkup.getWeight()); + map.put("bp", checkup.getBp()); + map.put("piFu", FunvCommonUtil.havaOrNOInteger(checkup.getPiFu(), two)); + map.put("piZheng", checkup.getPiZheng()); + map.put("biHan", checkup.getBiHan()); + map.put("ganJue", checkup.getGanJue()); + map.put("maoFa", FunvCommonUtil.havaOrNOInteger(checkup.getMaoFa(), two)); + map.put("fenBu", checkup.getFenBu()); + map.put("yanSe", checkup.getYanSe()); + map.put("buWei", checkup.getBuWei()); + + map.put("siZhi", FunvCommonUtil.havaOrNOInteger(checkup.getSiZhi(), one)); + map.put("jiWeiSuo", FunvCommonUtil.havaOrNOInteger(checkup.getJiWeiSuo(), three)); + map.put("maBi", FunvCommonUtil.havaOrNOInteger(checkup.getMaBi(), three)); + map.put("jingLuan", FunvCommonUtil.havaOrNOInteger(checkup.getJingLuan(), three)); + map.put("zhengChan", FunvCommonUtil.havaOrNOInteger(checkup.getZhengChan(), three)); + if (checkup.getSiZhiQiTa() != null && checkup.getSiZhiQiTa() == 1) { + map.put("siZhiQiTaDetails", checkup.getSiZhiQiTaDetails()); + } else { + map.put("siZhiQiTaDetails", ""); + } + map.put("jiZhu", FunvCommonUtil.havaOrNOInteger(checkup.getJiZhu(), two)); + map.put("jiZhuDetails", checkup.getJiZhuDetails()); + map.put("qianBiaoLinBaJie", checkup.getQianBiaoLinBaJie()); + map.put("shiLi", checkup.getShiLiZuo() + "/" + checkup.getShiLiYou()); + map.put("tingLi", checkup.getTingLiZuo() + "/" + checkup.getTingLiYou()); + + map.put("bianSe", FunvCommonUtil.havaOrNOInteger(checkup.getBianSe(), two)); + map.put("bianSeDetails", checkup.getBianSeDetails()); + + map.put("jiaZhuangXian", FunvCommonUtil.havaOrNOInteger(checkup.getJiaZhuangXian(), two)); + map.put("jiaZhuangXianDetails", checkup.getJiaZhuangXianDetails()); + + map.put("xiongKuo", FunvCommonUtil.havaOrNOInteger(checkup.getXiongKuo(), two)); + map.put("xiongKuoDetails", checkup.getXiongKuoDetails()); + + map.put("fei", FunvCommonUtil.havaOrNOInteger(checkup.getFei(), two)); + map.put("feiDetails", checkup.getFeiDetails()); + + map.put("heartRate", checkup.getHeartRate()); + map.put("heartRhythm", checkup.getHeartRhythm()); + + map.put("zaYin", FunvCommonUtil.havaOrNOInteger(checkup.getZaYin(), two)); + map.put("zaYinDetails", checkup.getZaYinDetails()); + + map.put("gan", checkup.getGan()); + map.put("pi", checkup.getPi()); + map.put("tiGeQiTa", checkup.getTiGeQiTa()); + + map.put("tiTai", FunvCommonUtil.havaOrNOInteger(checkup.getTiTai(), two)); + map.put("tiTaiDetails", checkup.getTiTaiDetails()); + + map.put("ruFangFaYu", FunvCommonUtil.havaOrNOInteger(checkup.getRuFangFaYu(), two)); + map.put("ruFangFaYuDetails", checkup.getRuFangFaYuDetails()); + if (checkup.getYinMao() != null) { + if (checkup.getYinMao() == 1) { + map.put("yinMao", "正常"); + } else if (checkup.getYinMao() == 2) { + map.put("yinMao", "无"); + } else if (checkup.getYinMao() == 3) { + map.put("yinMao", "稀少"); + } else { + map.put("yinMao", ""); + } + } else { + map.put("yinMao", ""); + } + + map.put("gcWaiYin", checkup.getGcWaiYin()); + map.put("gcFenMiWu", checkup.getGcFenMiWu()); + map.put("gcZiGong", checkup.getGcZiGong()); + map.put("gcFuJian", checkup.getGcFuJian()); + + map.put("waiYin", checkup.getWaiYin()); + map.put("yinDao", checkup.getYinDao()); + map.put("gongJing", checkup.getGongJing()); + map.put("ziGong", checkup.getZiGong()); + map.put("fuJian", checkup.getFuJian()); + map.put("yinDaoQiTa", checkup.getYinDaoQiTa()); + + map.put("xueHongDanBai", checkup.getXueHongDanBai()); + map.put("baiXiBao", checkup.getBaiXiBao()); + map.put("xueXiaoBan", checkup.getXueXiaoBan()); + map.put("xueChangGuiQiTa", checkup.getXueChangGuiQiTa()); + + map.put("niaoDanBai", checkup.getNiaoDanBai()); + map.put("niaoTang", checkup.getNiaoTang()); + map.put("niaoTongTi", checkup.getNiaoTongTi()); + map.put("niaoQianXue", checkup.getNiaoQianXue()); + map.put("niaoChangGuiQiTa", checkup.getNiaoChangGuiQiTa()); + + map.put("xueXing", checkup.getXueXing()); + map.put("rhxueXing", checkup.getRhxueXing()); + map.put("xueTang", checkup.getXueTang()); + + map.put("xueQingGuBing", checkup.getXueQingGuBing()); + map.put("xueQingGuCao", checkup.getXueQingGuCao()); + map.put("xueDanBai", checkup.getXueDanBai()); + map.put("zongDanHongSu", checkup.getZongDanHongSu()); + map.put("jieHeDanHongSu", checkup.getJieHeDanHongSu()); + map.put("bingGan", checkup.getBingGan()); + + map.put("yiGanKangYuan", checkup.getYiGanKangYuan()); + map.put("yiGanKangTi", checkup.getYiGanKangTi()); + map.put("yiGanEKangYuan", checkup.getYiGanEKangYuan()); + map.put("yiGanEKangTi", checkup.getYiGanEKangTi()); + map.put("yiGanHeXinKangTi", checkup.getYiGanHeXinKangTi()); + + map.put("xueQingJiGan", checkup.getXueQingJiGan()); + map.put("xueNiaoSuDan", checkup.getXueNiaoSuDan()); + map.put("shiYanJieGuo", checkup.getShiYanJieGuo()); + map.put("hiv", checkup.getHiv()); + map.put("linBing", checkup.getLinBing()); + map.put("xiongTou", checkup.getXiongTou()); + + map.put("jianChaJieGuo", FunvCommonUtil.havaOrNOInteger(checkup.getJianChaJieGuo(), two)); + map.put("jianChaDetails", checkup.getJianChaDetails()); + map.put("jiBingZhenDuan", checkup.getJiBingZhenDuan()); + + if (checkup.getYiXueYiJian()!=null){ + map.put("yiXueYiJian", MedicalAdviceEnum.getEnum(checkup.getYiXueYiJian()).getTitle()); + } + map.put("yiJianQiTaDetails", checkup.getYiJianQiTaDetails()); + map.put("zhiDaoYiJian", checkup.getZhiDaoYiJian()); + map.put("hunJianDoctor", checkup.getHunJianDoctor()); + list.add(map); + } + } + out = response.getOutputStream(); + Map cnames = new LinkedHashMap<>(); + cnames.put("username", "姓名"); + cnames.put("phone", "类型方式"); + cnames.put("age", "年龄"); + cnames.put("hospital", "婚检机构"); + cnames.put("premaritalUpTime", "婚检时间"); + cnames.put("certificateTypeId", "证件类型"); + cnames.put("certificateNum", "证件号"); + cnames.put("vcCardNo", "就诊卡号"); + cnames.put("sexType", "性别"); + + cnames.put("deliverStatus", "配偶信息是否提供"); + cnames.put("spouseName", "配偶姓名"); + cnames.put("spouseCertificateTypeId", "配偶证件类型"); + cnames.put("spouseCertificateNum","配偶证件号"); + cnames.put("isBloodshed", "有无血缘关系"); + cnames.put("bloodshed", "血缘关系"); + + cnames.put("menarcheAge", "初潮年龄"); + cnames.put("menstrualCycle", "月经周期"); + cnames.put("menstrualAmount", "月经量"); + cnames.put("lastMenses", "末次月经"); + cnames.put("menorrhalgia", "痛经"); + cnames.put("renLiu", "人流(次)"); + cnames.put("maritalHistory", "既往婚育史"); + cnames.put("sangOu", "是否丧偶"); + cnames.put("liYi", "是否离异"); + cnames.put("childrenNum", "子女(人)"); + cnames.put("nextOfKin", "有无家族近亲婚配"); + cnames.put("parents", "父母"); + cnames.put("grandparent", "祖父母"); + cnames.put("maternalGrandparents", "外祖父母"); + + cnames.put("jingShenZhuangTai", "精神状态"); + cnames.put("jingShenZhuangTaiDetails", "精神状态异常详情"); + cnames.put("yuYanNengLi", "语言能力"); + cnames.put("yuYanNengLiDetails", "语言能力异常详情"); + cnames.put("teShuMianRong", "特殊面容"); + cnames.put("teShuMianRongDetails", "特殊面容异常详情"); + cnames.put("teShuTiTai", "特殊体态"); + cnames.put("teShuTiTaiDetails", "特殊体态异常详情"); + cnames.put("height", "身高(cm)"); + cnames.put("weight", "体重(kg)"); + cnames.put("bp", "血压(mmHg)"); + cnames.put("piFu", "皮肤"); + cnames.put("piZheng", "皮疹"); + cnames.put("biHan", "闭汗"); + cnames.put("ganJue", "感觉异常"); + cnames.put("maoFa", "毛发"); + cnames.put("fenBu", "分布"); + cnames.put("yanSe", "颜色"); + cnames.put("buWei", "脱离部位"); + + cnames.put("siZhi", "四肢"); + cnames.put("jiWeiSuo", "肌萎缩"); + cnames.put("maBi", "麻痹"); + cnames.put("jingLuan", "痉挛"); + cnames.put("zhengChan", "震颤"); + cnames.put("siZhiQiTaDetails", "四肢其他"); + cnames.put("jiZhu", "脊柱"); + cnames.put("jiZhuDetails", "脊柱异常详情"); + cnames.put("qianBiaoLinBaJie", "浅表淋巴结"); + cnames.put("shiLi", "视力"); + cnames.put("tingLi", "听力"); + + cnames.put("bianSe", "辨色能力"); + cnames.put("bianSeDetails", "辨色能力异常详情"); + + cnames.put("jiaZhuangXian", "甲状腺"); + cnames.put("jiaZhuangXianDetails", "甲状腺异常详情"); + + cnames.put("xiongKuo", "胸廓"); + cnames.put("xiongKuoDetails","胸廓异常详情"); + + cnames.put("fei", "肺"); + cnames.put("feiDetails", "肺异常详情"); + + cnames.put("heartRate", "心率"); + cnames.put("heartRhythm", "心律"); + + cnames.put("zaYin", "杂音"); + cnames.put("zaYinDetails", "杂音异常详情"); + + cnames.put("gan", "肝"); + cnames.put("pi", "脾"); + cnames.put("tiGeQiTa", "体格检查其他"); + + cnames.put("tiTai", "体态"); + cnames.put("tiTaiDetails", "体态异常详情"); + + cnames.put("ruFangFaYu", "乳房发育"); + cnames.put("ruFangFaYuDetails", "乳房发育异常详情"); + cnames.put("yinMao", "阴毛"); + + cnames.put("gcWaiYin", "肛查/外阴"); + cnames.put("gcFenMiWu", "肛查/分泌物"); + cnames.put("gcZiGong", "肛查/子宫"); + cnames.put("gcFuJian", "肛查/附件"); + + cnames.put("waiYin", "阴道检查/外阴"); + cnames.put("yinDao", "阴道检查/阴道"); + cnames.put("gongJing", "阴道检查/宫颈"); + cnames.put("ziGong", "阴道检查/子宫"); + cnames.put("fuJian", "阴道检查/附件"); + cnames.put("yinDaoQiTa", "阴道检查/阴道检查其他"); + + cnames.put("xueHongDanBai", "血红蛋白(g/L)"); + cnames.put("baiXiBao", "白细胞计数(10^9/L)"); + cnames.put("xueXiaoBan", "血小板计数(10^9/L)"); + cnames.put("xueChangGuiQiTa", "血常规其他"); + + cnames.put("niaoDanBai", "尿蛋白"); + cnames.put("niaoTang", "尿糖"); + cnames.put("niaoTongTi", "尿酮体"); + cnames.put("niaoQianXue", "尿潜血"); + cnames.put("niaoChangGuiQiTa", "尿常规其他"); + + cnames.put("xueXing", "血型"); + cnames.put("rhxueXing", "RH血型"); + cnames.put("xueTang", "血糖(mmol/L)"); + + cnames.put("xueQingGuBing", "血清谷丙转氨酶(U/L)"); + cnames.put("xueQingGuCao", "血清谷草转氨酶(U/L)"); + cnames.put("xueDanBai", "白蛋白(g/L)"); + cnames.put("zongDanHongSu", "总胆红素(μmol/L)"); + cnames.put("jieHeDanHongSu", "结合胆红素(μmol/L)"); + cnames.put("bingGan", "丙肝"); + + cnames.put("yiGanKangYuan", "乙肝表面抗原"); + cnames.put("yiGanKangTi", "乙肝表面抗体"); + cnames.put("yiGanEKangYuan", "乙肝e抗原"); + cnames.put("yiGanEKangTi", "乙肝e抗体"); + cnames.put("yiGanHeXinKangTi", "乙肝核心抗体"); + + cnames.put("xueQingJiGan", "血清肌酐(μmol/L)"); + cnames.put("xueNiaoSuDan", "血尿素氮(mmol/L)"); + cnames.put("shiYanJieGuo", "梅毒血清实验/实验结果"); + cnames.put("hiv", "梅毒血清实验/HIV抗体检测"); + cnames.put("linBing", "淋病"); + cnames.put("xiongTou", "胸透"); + + cnames.put("jianChaJieGuo", "检查结果"); + cnames.put("jianChaDetails", "检查异常详情"); + cnames.put("jiBingZhenDuan", "jiBingZhenDuan"); + + cnames.put("yiXueYiJian", "医学意见"); + cnames.put("yiJianQiTaDetails", "医学意见其他详情"); + cnames.put("zhiDaoYiJian", "指导意见"); + cnames.put("hunJianDoctor", "婚检医生"); + + response.setContentType("application/octet-stream"); + response.setHeader("Content-Disposition", "attachment;fileName=" + "huanjian.xls"); + ExcelUtil.toExcel(out, list, cnames); + + } catch (Exception e) { + e.printStackTrace(); + } + } + } + + //导出男性婚前检查 + public void menExport(OutputStream out,List> list,List data,HttpServletResponse response){ + int one = 1; + int two = 2; + int three = 3; + if (CollectionUtils.isNotEmpty(data)) { + try { + for (PremaritalCheckup checkup : data) { + Map map = new HashMap<>(); + if (checkup.getSexType() == two) { + + String username = ""; + String phone = ""; + Integer age = null; + + if (StringUtils.isNotEmpty(checkup.getParentId())){ + ResidentsArchiveModel archiveModel = residentsArchiveService.getResident(checkup.getParentId()); + if (archiveModel!=null && archiveModel.getYn()==YnEnums.YES.getId()){ + username = archiveModel.getUsername(); + phone = archiveModel.getPhone(); + if (StringUtils.isNotEmpty(archiveModel.getBirthday())){ + age = DateUtil.getAge(DateUtil.parseYMD(archiveModel.getBirthday())); + } + } + } + map.put("username", username); + map.put("phone", phone); + map.put("age", age); + + //医院名称 + if (StringUtils.isNotEmpty(checkup.getHospitalId())) { + Organization organization = organizationService.getOrganization(Integer.valueOf(checkup.getHospitalId())); + if (organization != null && organization.getYn() == YnEnums.YES.getId()) { + map.put("hospital", organization.getName()); + } + } + map.put("premaritalUpTime", DateUtil.getYmd(checkup.getPremaritalUpTime())); + map.put("certificateTypeId", getBaseicConfigByid(checkup.getCertificateTypeId())); + map.put("certificateNum", checkup.getCertificateTypeId()); + map.put("vcCardNo", checkup.getVcCardNo()); + map.put("sexType", "男"); + if (checkup.getDeliverStatus()!=null && checkup.getDeliverStatus() == one) { + map.put("deliverStatus", "提供"); + } else { + map.put("deliverStatus", "未提供"); + } + map.put("spouseName", checkup.getSpouseName()); + map.put("spouseCertificateTypeId", getBaseicConfigByid(checkup.getSpouseCertificateTypeId())); + map.put("spouseCertificateNum", checkup.getSpouseCertificateNum()); + map.put("isBloodshed", FunvCommonUtil.havaOrNOInteger(checkup.getIsBloodshed(), one)); + map.put("bloodshed", checkup.getBloodshed()); + + map.put("maritalHistory", FunvCommonUtil.havaOrNOInteger(checkup.getMaritalHistory(), one)); + map.put("sangOu", FunvCommonUtil.havaOrNOInteger(checkup.getSangOu(), three)); + map.put("liYi", FunvCommonUtil.havaOrNOInteger(checkup.getLiYi(), three)); + map.put("childrenNum", checkup.getChildrenNum()); + map.put("nextOfKin", FunvCommonUtil.havaOrNOInteger(checkup.getNextOfKin(), one)); + map.put("parents", FunvCommonUtil.havaOrNOInteger(checkup.getParents(), three)); + map.put("grandparent", FunvCommonUtil.havaOrNOInteger(checkup.getGrandparent(), three)); + map.put("maternalGrandparents", FunvCommonUtil.havaOrNOInteger(checkup.getMaternalGrandparents(), three)); + + map.put("jingShenZhuangTai", FunvCommonUtil.havaOrNOInteger(checkup.getJingShenZhuangTai(), two)); + map.put("jingShenZhuangTaiDetails", checkup.getJingShenZhuangTaiDetails()); + map.put("yuYanNengLi", FunvCommonUtil.havaOrNOInteger(checkup.getYuYanNengLi(), two)); + map.put("yuYanNengLiDetails", checkup.getYuYanNengLiDetails()); + map.put("teShuMianRong", FunvCommonUtil.havaOrNOInteger(checkup.getTeShuMianRong(), two)); + map.put("teShuMianRongDetails", checkup.getTeShuMianRongDetails()); + map.put("teShuTiTai", FunvCommonUtil.havaOrNOInteger(checkup.getTeShuTiTai(), two)); + map.put("teShuTiTaiDetails", checkup.getTeShuTiTaiDetails()); + map.put("height", checkup.getHeight()); + map.put("weight", checkup.getWeight()); + map.put("bp", checkup.getBp()); + map.put("piFu", FunvCommonUtil.havaOrNOInteger(checkup.getPiFu(), two)); + map.put("piZheng", checkup.getPiZheng()); + map.put("biHan", checkup.getBiHan()); + map.put("ganJue", checkup.getGanJue()); + map.put("maoFa", FunvCommonUtil.havaOrNOInteger(checkup.getMaoFa(), two)); + map.put("fenBu", checkup.getFenBu()); + map.put("yanSe", checkup.getYanSe()); + map.put("buWei", checkup.getBuWei()); + + map.put("siZhi", FunvCommonUtil.havaOrNOInteger(checkup.getSiZhi(), one)); + map.put("jiWeiSuo", FunvCommonUtil.havaOrNOInteger(checkup.getJiWeiSuo(), three)); + map.put("maBi", FunvCommonUtil.havaOrNOInteger(checkup.getMaBi(), three)); + map.put("jingLuan", FunvCommonUtil.havaOrNOInteger(checkup.getJingLuan(), three)); + map.put("zhengChan", FunvCommonUtil.havaOrNOInteger(checkup.getZhengChan(), three)); + if (checkup.getSiZhiQiTa() != null && checkup.getSiZhiQiTa() == 1) { + map.put("siZhiQiTaDetails", checkup.getSiZhiQiTaDetails()); + } else { + map.put("siZhiQiTaDetails", ""); + } + map.put("jiZhu", FunvCommonUtil.havaOrNOInteger(checkup.getJiZhu(), two)); + map.put("jiZhuDetails", checkup.getJiZhuDetails()); + map.put("qianBiaoLinBaJie", checkup.getQianBiaoLinBaJie()); + map.put("shiLi", checkup.getShiLiZuo() + "/" + checkup.getShiLiYou()); + map.put("tingLi", checkup.getTingLiZuo() + "/" + checkup.getTingLiYou()); + + map.put("bianSe", FunvCommonUtil.havaOrNOInteger(checkup.getBianSe(), two)); + map.put("bianSeDetails", checkup.getBianSeDetails()); + + map.put("jiaZhuangXian", FunvCommonUtil.havaOrNOInteger(checkup.getJiaZhuangXian(), two)); + map.put("jiaZhuangXianDetails", checkup.getJiaZhuangXianDetails()); + + map.put("xiongKuo", FunvCommonUtil.havaOrNOInteger(checkup.getXiongKuo(), two)); + map.put("xiongKuoDetails", checkup.getXiongKuoDetails()); + + map.put("fei", FunvCommonUtil.havaOrNOInteger(checkup.getFei(), two)); + map.put("feiDetails", checkup.getFeiDetails()); + + map.put("heartRate", checkup.getHeartRate()); + map.put("heartRhythm", checkup.getHeartRhythm()); + + map.put("zaYin", FunvCommonUtil.havaOrNOInteger(checkup.getZaYin(), two)); + map.put("zaYinDetails", checkup.getZaYinDetails()); + + map.put("gan", checkup.getGan()); + map.put("pi", checkup.getPi()); + map.put("tiGeQiTa", checkup.getTiGeQiTa()); + + map.put("tiTai", FunvCommonUtil.havaOrNOInteger(checkup.getTiTai(), two)); + map.put("tiTaiDetails", checkup.getTiTaiDetails()); + + map.put("houJie", FunvCommonUtil.havaOrNOInteger(checkup.getHouJie(), one)); + map.put("houJieDetails", checkup.getHouJieDetails()); + + map.put("ruXianNvXingHua", FunvCommonUtil.havaOrNOInteger(checkup.getRuXianNvXingHua(), one)); + map.put("ruXianNvXingHuaDetails", checkup.getRuXianNvXingHuaDetails()); + if (checkup.getYinMao() != null) { + if (checkup.getYinMao() == 1) { + map.put("yinMao", "正常"); + } else if (checkup.getYinMao() == 2) { + map.put("yinMao", "无"); + } else if (checkup.getYinMao() == 3) { + map.put("yinMao", "稀少"); + } + } + + map.put("jBa", FunvCommonUtil.havaOrNOString(checkup.getjBa(),two)); + map.put("jBaDetails", checkup.getjBaDetails()); + if (checkup.getBaoPi() != null) { + if (checkup.getBaoPi() == 1) { + map.put("baoPi", "正常"); + } else if (checkup.getBaoPi() == 2) { + map.put("baoPi", "过长"); + } else if (checkup.getBaoPi() == 3) { + map.put("baoPi", "包茎"); + } + } + + if (checkup.getGaoWan() != null) { + if (checkup.getGaoWan() == 1) { + map.put("gaoWan", "扪及"); + } else if (checkup.getGaoWan() == 2) { + map.put("gaoWan", "未们及"); + } + } + map.put("gaoWanZuo", checkup.getGaoWanZuo()); + map.put("gaoWanYou", checkup.getGaoWanYou()); + + if (checkup.getFuGao() != null) { + if (checkup.getFuGao() == 1) { + map.put("gaoWan", "正常"); + } else if (checkup.getFuGao() == 2) { + map.put("gaoWan", "结节"); + } + } + + map.put("fuGaoZuo", checkup.getFuGaoZuo()); + map.put("fuGaoYou", checkup.getFuGaoYou()); + + map.put("jingMai", FunvCommonUtil.havaOrNOInteger(checkup.getJingMai(),one)); + map.put("jingMaiZuo", checkup.getJingMaiZuo()); + map.put("jingMaiYou", checkup.getJingMaiYou()); + map.put("shengZhiQiTa", checkup.getShengZhiQiTa()); + + map.put("xueHongDanBai", checkup.getXueHongDanBai()); + map.put("baiXiBao", checkup.getBaiXiBao()); + map.put("xueXiaoBan", checkup.getXueXiaoBan()); + map.put("xueChangGuiQiTa", checkup.getXueChangGuiQiTa()); + + map.put("niaoDanBai", checkup.getNiaoDanBai()); + map.put("niaoTang", checkup.getNiaoTang()); + map.put("niaoTongTi", checkup.getNiaoTongTi()); + map.put("niaoQianXue", checkup.getNiaoQianXue()); + map.put("niaoChangGuiQiTa", checkup.getNiaoChangGuiQiTa()); + + map.put("xueXing", checkup.getXueXing()); + map.put("rhxueXing", checkup.getRhxueXing()); + map.put("xueTang", checkup.getXueTang()); + + map.put("xueQingGuBing", checkup.getXueQingGuBing()); + map.put("xueQingGuCao", checkup.getXueQingGuCao()); + map.put("xueDanBai", checkup.getXueDanBai()); + map.put("zongDanHongSu", checkup.getZongDanHongSu()); + map.put("jieHeDanHongSu", checkup.getJieHeDanHongSu()); + map.put("bingGan", checkup.getBingGan()); + + map.put("yiGanKangYuan", checkup.getYiGanKangYuan()); + map.put("yiGanKangTi", checkup.getYiGanKangTi()); + map.put("yiGanEKangYuan", checkup.getYiGanEKangYuan()); + map.put("yiGanEKangTi", checkup.getYiGanEKangTi()); + map.put("yiGanHeXinKangTi", checkup.getYiGanHeXinKangTi()); + + map.put("xueQingJiGan", checkup.getXueQingJiGan()); + map.put("xueNiaoSuDan", checkup.getXueNiaoSuDan()); + map.put("shiYanJieGuo", checkup.getShiYanJieGuo()); + map.put("hiv", checkup.getHiv()); + map.put("linBing", checkup.getLinBing()); + map.put("xiongTou", checkup.getXiongTou()); + + map.put("jianChaJieGuo", FunvCommonUtil.havaOrNOInteger(checkup.getJianChaJieGuo(), two)); + map.put("jianChaDetails", checkup.getJianChaDetails()); + map.put("jiBingZhenDuan", checkup.getJiBingZhenDuan()); + + if (checkup.getYiXueYiJian()!=null){ + map.put("yiXueYiJian", MedicalAdviceEnum.getEnum(checkup.getYiXueYiJian()).getTitle()); + } + + map.put("yiJianQiTaDetails", checkup.getYiJianQiTaDetails()); + map.put("zhiDaoYiJian", checkup.getZhiDaoYiJian()); + map.put("hunJianDoctor", checkup.getHunJianDoctor()); + list.add(map); + } + } + out = response.getOutputStream(); + Map cnames = new LinkedHashMap<>(); + cnames.put("username", "姓名"); + cnames.put("phone", "类型方式"); + cnames.put("age", "年龄"); + cnames.put("hospital", "婚检机构"); + cnames.put("premaritalUpTime", "婚检时间"); + cnames.put("certificateTypeId", "证件类型"); + cnames.put("certificateNum", "证件号"); + cnames.put("vcCardNo", "就诊卡号"); + cnames.put("sexType", "性别"); + + cnames.put("deliverStatus", "配偶信息是否提供"); + cnames.put("spouseName", "配偶姓名"); + cnames.put("spouseCertificateTypeId", "配偶证件类型"); + cnames.put("spouseCertificateNum","配偶证件号"); + cnames.put("isBloodshed", "有无血缘关系"); + cnames.put("bloodshed", "血缘关系"); + + cnames.put("maritalHistory", "既往婚育史"); + cnames.put("sangOu", "是否丧偶"); + cnames.put("liYi", "是否离异"); + cnames.put("childrenNum", "子女(人)"); + cnames.put("nextOfKin", "有无家族近亲婚配"); + cnames.put("parents", "父母"); + cnames.put("grandparent", "祖父母"); + cnames.put("maternalGrandparents", "外祖父母"); + + cnames.put("jingShenZhuangTai", "精神状态"); + cnames.put("jingShenZhuangTaiDetails", "精神状态异常详情"); + cnames.put("yuYanNengLi", "语言能力"); + cnames.put("yuYanNengLiDetails", "语言能力异常详情"); + cnames.put("teShuMianRong", "特殊面容"); + cnames.put("teShuMianRongDetails", "特殊面容异常详情"); + cnames.put("teShuTiTai", "特殊体态"); + cnames.put("teShuTiTaiDetails", "特殊体态异常详情"); + cnames.put("height", "身高(cm)"); + cnames.put("weight", "体重(kg)"); + cnames.put("bp", "血压(mmHg)"); + cnames.put("piFu", "皮肤"); + cnames.put("piZheng", "皮疹"); + cnames.put("biHan", "闭汗"); + cnames.put("ganJue", "感觉异常"); + cnames.put("maoFa", "毛发"); + cnames.put("fenBu", "分布"); + cnames.put("yanSe", "颜色"); + cnames.put("buWei", "脱离部位"); + + cnames.put("siZhi", "四肢"); + cnames.put("jiWeiSuo", "肌萎缩"); + cnames.put("maBi", "麻痹"); + cnames.put("jingLuan", "痉挛"); + cnames.put("zhengChan", "震颤"); + cnames.put("siZhiQiTaDetails", "四肢其他"); + cnames.put("jiZhu", "脊柱"); + cnames.put("jiZhuDetails", "脊柱异常详情"); + cnames.put("qianBiaoLinBaJie", "浅表淋巴结"); + cnames.put("shiLi", "视力"); + cnames.put("tingLi", "听力"); + + cnames.put("bianSe", "辨色能力"); + cnames.put("bianSeDetails", "辨色能力异常详情"); + + cnames.put("jiaZhuangXian", "甲状腺"); + cnames.put("jiaZhuangXianDetails", "甲状腺异常详情"); + + cnames.put("xiongKuo", "胸廓"); + cnames.put("xiongKuoDetails","胸廓异常详情"); + + cnames.put("fei", "肺"); + cnames.put("feiDetails", "肺异常详情"); + + cnames.put("heartRate", "心率"); + cnames.put("heartRhythm", "心律"); + + cnames.put("zaYin", "杂音"); + cnames.put("zaYinDetails", "杂音异常详情"); + + cnames.put("gan", "肝"); + cnames.put("pi", "脾"); + cnames.put("tiGeQiTa", "体格检查其他"); + + cnames.put("tiTai", "体态"); + cnames.put("tiTaiDetails", "体态异常详情"); + + cnames.put("houJie", "喉结"); + cnames.put("houJieDetails", "喉结详情"); + + cnames.put("ruXianNvXingHua","男性乳腺女性化"); + cnames.put("ruXianNvXingHuaDetails", "男性乳腺女性化详情"); + cnames.put("yinMao", "阴毛"); + cnames.put("jBa", "阴茎"); + cnames.put("jBaDetails", "阴茎异常详情"); + cnames.put("baoPi", "包皮"); + cnames.put("gaoWan", "睾丸"); + cnames.put("gaoWanZuo", "睾丸(左)"); + cnames.put("gaoWanYou", "睾丸(右)"); + cnames.put("gaoWan", "附睾"); + cnames.put("fuGaoZuo", "附睾(左)"); + cnames.put("fuGaoYou", "附睾(右)"); + cnames.put("jingMai", "精索静脉曲张"); + cnames.put("jingMaiZuo", "精索静脉曲张(左)"); + cnames.put("jingMaiYou", "精索静脉曲张(右)"); + cnames.put("shengZhiQiTa", "生殖器其他"); + + cnames.put("xueHongDanBai", "血红蛋白(g/L)"); + cnames.put("baiXiBao", "白细胞计数(10^9/L)"); + cnames.put("xueXiaoBan", "血小板计数(10^9/L)"); + cnames.put("xueChangGuiQiTa", "血常规其他"); + + cnames.put("niaoDanBai", "尿蛋白"); + cnames.put("niaoTang", "尿糖"); + cnames.put("niaoTongTi", "尿酮体"); + cnames.put("niaoQianXue", "尿潜血"); + cnames.put("niaoChangGuiQiTa", "尿常规其他"); + + cnames.put("xueXing", "血型"); + cnames.put("rhxueXing", "RH血型"); + cnames.put("xueTang", "血糖(mmol/L)"); + + cnames.put("xueQingGuBing", "血清谷丙转氨酶(U/L)"); + cnames.put("xueQingGuCao", "血清谷草转氨酶(U/L)"); + cnames.put("xueDanBai", "白蛋白(g/L)"); + cnames.put("zongDanHongSu", "总胆红素(μmol/L)"); + cnames.put("jieHeDanHongSu", "结合胆红素(μmol/L)"); + cnames.put("bingGan", "丙肝"); + + cnames.put("yiGanKangYuan", "乙肝表面抗原"); + cnames.put("yiGanKangTi", "乙肝表面抗体"); + cnames.put("yiGanEKangYuan", "乙肝e抗原"); + cnames.put("yiGanEKangTi", "乙肝e抗体"); + cnames.put("yiGanHeXinKangTi", "乙肝核心抗体"); + + cnames.put("xueQingJiGan", "血清肌酐(μmol/L)"); + cnames.put("xueNiaoSuDan", "血尿素氮(mmol/L)"); + cnames.put("shiYanJieGuo", "梅毒血清实验/实验结果"); + cnames.put("hiv", "梅毒血清实验/HIV抗体检测"); + cnames.put("linBing", "淋病"); + cnames.put("xiongTou", "胸透"); + + cnames.put("jianChaJieGuo", "检查结果"); + cnames.put("jianChaDetails", "检查异常详情"); + cnames.put("jiBingZhenDuan", "jiBingZhenDuan"); + + cnames.put("yiXueYiJian", "医学意见"); + cnames.put("yiJianQiTaDetails", "医学意见其他详情"); + cnames.put("zhiDaoYiJian", "指导意见"); + cnames.put("hunJianDoctor", "婚检医生"); + + response.setContentType("application/octet-stream"); + response.setHeader("Content-Disposition", "attachment;fileName=" + "huanjian.xls"); + ExcelUtil.toExcel(out, list, cnames); + + } catch (Exception e) { + e.printStackTrace(); + } + } + } + + //获取基础基础名称 + public String getBaseicConfigByid(String id) { + + if (StringUtils.isNotEmpty(id)){ + BasicConfig basicConfig = basicConfigService.getOneBasicConfigById(id); + if (basicConfig!=null && basicConfig.getYn()!=YnEnums.NO.getId()){ + return basicConfig.getName(); + } + } + return ""; + } + } -- 1.8.3.1