|
@@ -5,13 +5,16 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.ObjectUtils;
|
|
|
import thyyxxk.webserver.config.exception.ExceptionEnum;
|
|
|
import thyyxxk.webserver.dao.his.ybkf.YbStatDao;
|
|
|
-import thyyxxk.webserver.entity.ResultVo;
|
|
|
import thyyxxk.webserver.entity.HeadInfo;
|
|
|
+import thyyxxk.webserver.entity.ResultVo;
|
|
|
+import thyyxxk.webserver.entity.medicalinsurance.setlinfo.SiSetlinfo;
|
|
|
import thyyxxk.webserver.entity.ybkf.YbStatDto;
|
|
|
import thyyxxk.webserver.entity.ybkf.YbStatResult;
|
|
|
+import thyyxxk.webserver.service.redislike.RedisLikeService;
|
|
|
import thyyxxk.webserver.utils.DateUtil;
|
|
|
import thyyxxk.webserver.utils.DecimalUtil;
|
|
|
import thyyxxk.webserver.utils.ExcelUtil;
|
|
|
+import thyyxxk.webserver.utils.FilterUtil;
|
|
|
import thyyxxk.webserver.utils.ResultVoUtil;
|
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
@@ -31,9 +34,12 @@ public class YbStatService {
|
|
|
|
|
|
private final YbStatDao dao;
|
|
|
|
|
|
+ private final RedisLikeService redis;
|
|
|
+
|
|
|
@Autowired
|
|
|
- public YbStatService(YbStatDao dao ) {
|
|
|
+ public YbStatService(YbStatDao dao, RedisLikeService redis) {
|
|
|
this.dao = dao;
|
|
|
+ this.redis = redis;
|
|
|
}
|
|
|
|
|
|
public ResultVo<List<YbStatResult>> selectYbStatInfo(YbStatDto dto){
|
|
@@ -69,7 +75,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("长沙市城职普通住院");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43010031001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -93,7 +99,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("长沙市城居普通住院");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43010039001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -117,7 +123,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("长沙市离休");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43010034001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -141,7 +147,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("长沙市生育");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43010051052" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -158,7 +164,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("长沙县城职普通住院");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43012131001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -175,7 +181,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("长沙县城居普通住院");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43012139001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -192,7 +198,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("长沙县离休");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43012134001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -209,7 +215,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("长沙县生育");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43012151052" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -226,7 +232,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("浏阳县城职普通住院");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43018131001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -243,7 +249,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("浏阳县城居普通住院");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43018139001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -260,7 +266,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("浏阳县离休");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43018134001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -277,7 +283,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("浏阳县生育");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43018151052" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -294,7 +300,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("湖南省城职普通住院");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43990031001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -311,7 +317,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("湖南省离休");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43990034001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -328,7 +334,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("湖南省生育");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43990051052" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -341,7 +347,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfoInProvinceOtherCities(beginTime, endTime, setlType);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("省内异地");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43990001" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -354,7 +360,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfoInOutProvinceCities(beginTime, endTime, setlType);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("省外异地");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "43990002" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -378,7 +384,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("市单病种");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "4301002102" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -393,7 +399,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("省单病种");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "4399002102" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -406,7 +412,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfoInProvinceOtherCitiesSingleDisease(beginTime, endTime, setlType);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("省内异地单病种");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "4399012102" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -420,7 +426,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("普通门诊");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "11" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -434,7 +440,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("特殊门诊");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "14" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -448,7 +454,7 @@ public class YbStatService {
|
|
|
YbStatResult result = dao.selectYbStatInfo(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
if(!ObjectUtils.isEmpty(result) && result.getPsnCount() > 0){
|
|
|
result.setInsurName("生育门诊");
|
|
|
- result.setInsurType(insurType);
|
|
|
+ result.setInsurType("99".equals(insurType) ? "51" : insurType);
|
|
|
ybStatResult.add(result);
|
|
|
}
|
|
|
}
|
|
@@ -686,34 +692,34 @@ public class YbStatService {
|
|
|
String yf;
|
|
|
switch (i){
|
|
|
case 1:
|
|
|
- yf = "一 月";
|
|
|
+ yf = "一月";
|
|
|
break;
|
|
|
case 2:
|
|
|
- yf = "二 月";
|
|
|
+ yf = "二月";
|
|
|
break;
|
|
|
case 3:
|
|
|
- yf = "三 月";
|
|
|
+ yf = "三月";
|
|
|
break;
|
|
|
case 4:
|
|
|
- yf = "四 月";
|
|
|
+ yf = "四月";
|
|
|
break;
|
|
|
case 5:
|
|
|
- yf = "五 月";
|
|
|
+ yf = "五月";
|
|
|
break;
|
|
|
case 6:
|
|
|
- yf = "六 月";
|
|
|
+ yf = "六月";
|
|
|
break;
|
|
|
case 7:
|
|
|
- yf = "七 月";
|
|
|
+ yf = "七月";
|
|
|
break;
|
|
|
case 8:
|
|
|
- yf = "八 月";
|
|
|
+ yf = "八月";
|
|
|
break;
|
|
|
case 9:
|
|
|
- yf = "九 月";
|
|
|
+ yf = "九月";
|
|
|
break;
|
|
|
case 10:
|
|
|
- yf = "十 月";
|
|
|
+ yf = "十月";
|
|
|
break;
|
|
|
case 11:
|
|
|
yf = "十一月";
|
|
@@ -1036,4 +1042,243 @@ public class YbStatService {
|
|
|
return result;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ *@Author hsh
|
|
|
+ *@Description // 查询柱状图医保统计数据
|
|
|
+ *@Date 2022/7/5 11:26
|
|
|
+ *@Param [dto]
|
|
|
+ *@Return thyyxxk.webserver.entity.ResultVo<java.util.List<java.util.Map<java.lang.String,java.lang.Object>>>
|
|
|
+ **/
|
|
|
+ public ResultVo<List<Map<String, Object>>> selectYbChart(YbStatDto dto){
|
|
|
+ // 按照同比的数据返回去渲染图形数据
|
|
|
+ dto.setSelectType("second");
|
|
|
+ ResultVo<List<Map<String, Object>>> rs = selectYbStatRatio(dto);
|
|
|
+ List<Map<String, Object>> list = rs.getData();
|
|
|
+ if(null == list){
|
|
|
+ String log = "查询没有数据";
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.NO_DATA_EXIST, log);
|
|
|
+ }
|
|
|
+ return ResultVoUtil.success(list);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ *@Author hsh
|
|
|
+ *@Description // 查询医保明细数据
|
|
|
+ *@Date 2022/7/5 11:27
|
|
|
+ *@Param [dto]
|
|
|
+ *@Return thyyxxk.webserver.entity.ResultVo<java.util.List<thyyxxk.webserver.entity.medicalinsurance.setlinfo.SiSetlinfo>>
|
|
|
+ **/
|
|
|
+ public ResultVo<List<SiSetlinfo>> selectYbStatDetail(YbStatDto dto){
|
|
|
+ String beginTime = dto.getStartTime();
|
|
|
+ String endTime = DateUtil.getMonthEndtime(dto.getEndTime());
|
|
|
+ String insurType = dto.getInsurType();
|
|
|
+ String setlType = dto.getSetlType();
|
|
|
+
|
|
|
+ // 统筹区域
|
|
|
+ List<String> insuplcAdmdvs = new ArrayList<>();
|
|
|
+ // 险种类型
|
|
|
+ List<String> insurtype = new ArrayList<>();
|
|
|
+ // 医疗类别
|
|
|
+ List<String> med_type = new ArrayList<>();
|
|
|
+ // 返回结果
|
|
|
+ List<SiSetlinfo> siSetlInfoList = new ArrayList<>();
|
|
|
+
|
|
|
+ if("21".equals(setlType)){
|
|
|
+ // 住院
|
|
|
+ if("43010031001".equals(insurType)){
|
|
|
+ // 长沙市城职普通住院(包含外伤住院)
|
|
|
+ insuplcAdmdvs.add("430102");
|
|
|
+ insuplcAdmdvs.add("430103");
|
|
|
+ insuplcAdmdvs.add("430104");
|
|
|
+ insuplcAdmdvs.add("430105");
|
|
|
+ insuplcAdmdvs.add("430111");
|
|
|
+ insuplcAdmdvs.add("430112");
|
|
|
+ insuplcAdmdvs.add("430140");
|
|
|
+ insuplcAdmdvs.add("430199");
|
|
|
+ insurtype.add("310");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43010039001".equals(insurType)){
|
|
|
+ // 长沙市城居普通住院(包含外伤住院)
|
|
|
+ insuplcAdmdvs.add("430102");
|
|
|
+ insuplcAdmdvs.add("430103");
|
|
|
+ insuplcAdmdvs.add("430104");
|
|
|
+ insuplcAdmdvs.add("430105");
|
|
|
+ insuplcAdmdvs.add("430111");
|
|
|
+ insuplcAdmdvs.add("430112");
|
|
|
+ insuplcAdmdvs.add("430140");
|
|
|
+ insuplcAdmdvs.add("430199");
|
|
|
+ insurtype.add("390");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43010034001".equals(insurType)){
|
|
|
+ // 长沙市离休
|
|
|
+ insuplcAdmdvs.add("430102");
|
|
|
+ insuplcAdmdvs.add("430103");
|
|
|
+ insuplcAdmdvs.add("430104");
|
|
|
+ insuplcAdmdvs.add("430105");
|
|
|
+ insuplcAdmdvs.add("430111");
|
|
|
+ insuplcAdmdvs.add("430112");
|
|
|
+ insuplcAdmdvs.add("430140");
|
|
|
+ insuplcAdmdvs.add("430199");
|
|
|
+ insurtype.add("340");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43010051052".equals(insurType)){
|
|
|
+ // 长沙市生育
|
|
|
+ insuplcAdmdvs.add("430102");
|
|
|
+ insuplcAdmdvs.add("430103");
|
|
|
+ insuplcAdmdvs.add("430104");
|
|
|
+ insuplcAdmdvs.add("430105");
|
|
|
+ insuplcAdmdvs.add("430111");
|
|
|
+ insuplcAdmdvs.add("430112");
|
|
|
+ insuplcAdmdvs.add("430140");
|
|
|
+ insuplcAdmdvs.add("430199");
|
|
|
+ med_type.add("52");
|
|
|
+ med_type.add("2106");
|
|
|
+ med_type.add("2107");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43012131001".equals(insurType)){
|
|
|
+ // 长沙县城职普通住院(包含外伤住院)
|
|
|
+ insuplcAdmdvs.add("430121");
|
|
|
+ insurtype.add("310");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43012139001".equals(insurType)){
|
|
|
+ // 长沙县城居普通住院(包含外伤住院)
|
|
|
+ insuplcAdmdvs.add("430121");
|
|
|
+ insurtype.add("390");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43012134001".equals(insurType)){
|
|
|
+ // 长沙县离休
|
|
|
+ insuplcAdmdvs.add("430121");
|
|
|
+ insurtype.add("340");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43012151052".equals(insurType)){
|
|
|
+ // 长沙县生育
|
|
|
+ insuplcAdmdvs.add("430121");
|
|
|
+ med_type.add("52");
|
|
|
+ med_type.add("2106");
|
|
|
+ med_type.add("2107");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43018131001".equals(insurType)){
|
|
|
+ // 浏阳县城职普通住院(包含外伤住院)
|
|
|
+ insuplcAdmdvs.add("430181");
|
|
|
+ insurtype.add("310");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43018139001".equals(insurType)){
|
|
|
+ // 浏阳县城居普通住院(包含外伤住院)
|
|
|
+ insuplcAdmdvs.add("430181");
|
|
|
+ insurtype.add("390");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43018134001".equals(insurType)){
|
|
|
+ // 浏阳县离休
|
|
|
+ insuplcAdmdvs.add("430181");
|
|
|
+ insurtype.add("340");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43018151052".equals(insurType)){
|
|
|
+ // 浏阳县生育
|
|
|
+ insuplcAdmdvs.add("430181");
|
|
|
+ med_type.add("52");
|
|
|
+ med_type.add("2106");
|
|
|
+ med_type.add("2107");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43990031001".equals(insurType)){
|
|
|
+ // 湖南省城职普通住院(包含外伤住院)
|
|
|
+ insuplcAdmdvs.add("439900");
|
|
|
+ insurtype.add("310");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43990034001".equals(insurType)){
|
|
|
+ // 湖南省离休
|
|
|
+ insuplcAdmdvs.add("439900");
|
|
|
+ insurtype.add("340");
|
|
|
+ med_type.add("2101");
|
|
|
+ med_type.add("22");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43990051052".equals(insurType)){
|
|
|
+ // 湖南省生育
|
|
|
+ insuplcAdmdvs.add("439900");
|
|
|
+ med_type.add("52");
|
|
|
+ med_type.add("2106");
|
|
|
+ med_type.add("2107");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("43990001".equals(insurType)){
|
|
|
+ // 省内异地(包含外伤住院)
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoListInProvinceOtherCities(beginTime, endTime, setlType);
|
|
|
+ } else if("43990002".equals(insurType)){
|
|
|
+ // 省外异地(包含外伤住院)
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoListInOutProvinceCities(beginTime, endTime, setlType);
|
|
|
+ } else if("4301002102".equals(insurType)){
|
|
|
+ // 市单病种
|
|
|
+ insuplcAdmdvs.add("430102");
|
|
|
+ insuplcAdmdvs.add("430103");
|
|
|
+ insuplcAdmdvs.add("430104");
|
|
|
+ insuplcAdmdvs.add("430105");
|
|
|
+ insuplcAdmdvs.add("430111");
|
|
|
+ insuplcAdmdvs.add("430112");
|
|
|
+ insuplcAdmdvs.add("430140");
|
|
|
+ insuplcAdmdvs.add("430199");
|
|
|
+ insuplcAdmdvs.add("430121");
|
|
|
+ insuplcAdmdvs.add("430181");
|
|
|
+ med_type.add("2102");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("4399002102".equals(insurType)){
|
|
|
+ // 省城职单病种
|
|
|
+ insuplcAdmdvs.add("439900");
|
|
|
+ med_type.add("2102");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("4399012102".equals(insurType)){
|
|
|
+ // 省内异地单病种
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoListInProvinceOtherCitiesSingleDisease(beginTime, endTime, setlType);
|
|
|
+ }
|
|
|
+
|
|
|
+ } else {
|
|
|
+ // 门诊
|
|
|
+ if("11".equals(insurType)){
|
|
|
+ // 普通门诊
|
|
|
+ med_type.add("11");
|
|
|
+ med_type.add("9903");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("14".equals(insurType) ){
|
|
|
+ // 门诊慢特病
|
|
|
+ med_type.add("14");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ } else if("51".equals(insurType)){
|
|
|
+ // 生育门诊
|
|
|
+ med_type.add("51");
|
|
|
+ siSetlInfoList = dao.selectSiSetlInfoList(beginTime, endTime, setlType, insuplcAdmdvs, insurtype, med_type);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ if (null == siSetlInfoList || siSetlInfoList.isEmpty()) {
|
|
|
+ return ResultVoUtil.fail(ExceptionEnum.NO_DATA_EXIST);
|
|
|
+ }
|
|
|
+
|
|
|
+ siSetlInfoList.forEach(item -> {
|
|
|
+ String othpay = DecimalUtil.minusLink(String.valueOf(item.getFundPaySumamt()), String.valueOf(item.getHifpPay()), String.valueOf(item.getHifmiPay()), String.valueOf(item.getCvlservPay()));
|
|
|
+ item.setOthPay("".equals(othpay) ? 0d : Double.parseDouble(othpay));
|
|
|
+ item.setInsuplcAdmdvsName(redis.getRegionName(item.getInsuplcAdmdvs()));
|
|
|
+ FilterUtil.filterCodeToName(item);
|
|
|
+ });
|
|
|
+
|
|
|
+ return ResultVoUtil.success(siSetlInfoList);
|
|
|
+ }
|
|
|
+
|
|
|
}
|