liusheng
9 天以前 67d934b740862de1db1951137b5590410f3eb92b
代码提交
已添加6个文件
已修改5个文件
992 ■■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedOuthospController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSLTDExternalController.java 373 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/ServiceSLTDCommonVO.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/ServiceSLTDContactsResDTO.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/ServiceSLTDDiagnosisResDTO.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/ServiceSLTDInhospReqVO.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/ServiceSLTDInhospResDTO.java 191 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml 170 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java
@@ -108,6 +108,8 @@
    @PostMapping("/selectPatMedInhospListCount")
    @ApiOperation("查询出、入院看病人次和人数")
    public AjaxResult selectPatMedInhospListCount(@RequestBody PatMedReq patMedReq) {
        SysUser user = getLoginUser().getUser();
        patMedReq.setOrgid(user.getOrgid());
        return success(patMedInhospService.selectPatMedInhospListCount(patMedReq));
    }
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedOuthospController.java
@@ -68,13 +68,13 @@
    @PostMapping("/selectPatMedOuthospCount")
    @ApiOperation("查询门诊看病人次和人数")
    public AjaxResult selectPatMedOuthospCount(@RequestBody PatMedReq patMedReq) {
//        SysUser user = getLoginUser().getUser();
        SysUser user = getLoginUser().getUser();
//        List<String> deptCode = new ArrayList<>();
//        for (Map<String, Object> map : user.getBelongDepts()) {
//            if (ObjectUtils.isNotEmpty(map.get("deptCode"))) deptCode.add(map.get("deptCode").toString());
//        }
//        patMedReq.setDeptcodeList(deptCode);
        patMedReq.setOrgid(user.getOrgid());
        PatMedRes patMedRes = patMedOuthospService.selectPatMedOuthospCount(patMedReq);
        return success(patMedRes);
    }
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSLTDExternalController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,373 @@
package com.ruoyi.web.controller.smartor;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.smartor.domain.ServiceQueryFocus;
import com.smartor.domain.ServiceQueryInfo;
import com.smartor.domain.ServiceTaskInfo;
import com.smartor.service.IServiceExternalService;
import com.smartor.service.ISvyTaskSingleService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
 * çœç«‹åŒå¾·æ•°æ®é‡‡é›†è°ƒç”¨æŽ¥å£Controller
 *
 * @author smartor
 * @date 2024-12-10
 */
@Slf4j
@Api(description = "省立同德数据采集调用接口")
@RestController
@RequestMapping("/smartor/serviceSLTDExternal")
public class ServiceSLTDExternalController extends BaseController {
    @Autowired
    private IServiceExternalService serviceExternalService;
    @Autowired
    private ISvyTaskSingleService svyTaskSingleService;
    /**
     * é€šç”¨æŽ¥å£
     */
    @ApiOperation("通用接口")
    @PostMapping("/generalInterface")
    public Map<String, Object> generalInterface(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.generalInterface(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---generalInterface出异常了:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ–°å¢žä½“检任务进子任务
     */
    @ApiOperation("新增体检任务进子任务")
    @PostMapping("/generalInterfaceAddTask")
    public AjaxResult generalInterfaceAddTask(@RequestBody ServiceTaskInfo serviceTaskInfo) {
        log.info("------serviceTaskInfo的值为:{}", serviceTaskInfo);
        Integer res = 0;
        try {
            res = svyTaskSingleService.insertTaskInfo(serviceTaskInfo);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---generalInterfaceAddTask出异常了:{}", e.getMessage());
        }
        return toAjax(res);
    }
    /**
     * 360患者信息获取
     */
    @ApiOperation("360患者信息获取")
    @PostMapping("/query360PatInfo")
    public Map query360PatInfo(@RequestBody ServiceQueryInfo serviceQueryInfo) {
        log.info("------serviceQueryInfo的入参为:{}", serviceQueryInfo);
        Map map = null;
        try {
            map = svyTaskSingleService.query360PatInfo(serviceQueryInfo);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("query360PatInfo---query360PatInfo:{}", e.getMessage());
        }
        return map;
    }
    /**
     * åŒ»å˜±çŸ¥è¯†æç¤º
     */
    @ApiOperation("医嘱知识提示")
    @PostMapping("/focus")
    public Map focus(@RequestBody ServiceQueryFocus serviceQueryFocus) {
        Map map = null;
        try {
            map = svyTaskSingleService.focus(serviceQueryFocus);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("query360PatInfo---query360PatInfo:{}", e.getMessage());
        }
        return map;
    }
    /**
     * æ–°å¢žç§‘室信息
     */
    @ApiOperation("新增科室信息")
    @PostMapping("/addDeptInfo")
    public Map<String, Object> addDeptInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addDeptInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addDeptInfo出异常了:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ–°å¢žç§‘室信息
     */
    @ApiOperation("新增用户信息")
    @PostMapping("/addUserInfo")
    public Map<String, Object> addUserInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addUserInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addUserInfo出异常了:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ–°å¢žæœºæž„信息
     */
    @ApiOperation("新增机构信息")
    @PostMapping("/addOrganInfo")
    public Map<String, Object> addOrganInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addOrganInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addOrganInfo出异常了:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ–°å¢žå…¥é™¢ä¿¡æ¯
     */
    @ApiOperation("新增入院信息")
    @PostMapping("/addInHospInfo")
    public Map<String, Object> addInHospInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addInHospInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addInHospInfo:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * å–消入院登记信息
     */
    @ApiOperation("取消入院登记信息")
    @PostMapping("/cancelInHospInfo")
    public Map<String, Object> cancelInHospInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.cancelInHospInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---cancelInHospInfo:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ–°å¢žå‡ºé™¢ç™»è®°ä¿¡æ¯
     */
    @ApiOperation("新增出院登记信息")
    @PostMapping("/addOutHospInfo")
    public Map<String, Object> addOutHospInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addOutHospInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addOutHospInfo:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     *
     */
    @ApiOperation("新增出院记录登记信息")
    @PostMapping("/addOutHospJLInfo")
    public Map<String, Object> addOutHospJLInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addOutHospJLInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addOutHospJLInfo:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * å–消出院登记信息
     */
    @ApiOperation("取消出院登记信息")
    @PostMapping("/cancelOutHospInfo")
    public Map<String, Object> cancelOutHospInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.cancelOutHospInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---cancelOutHospInfo:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ–°å¢žå‡ºé™¢ç™»è®°ä¿¡æ¯
     */
    @ApiOperation("新增预出院登记信息")
    @PostMapping("/addPreOutHospInfo")
    public Map<String, Object> addPreOutHospInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addPreOutHospInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addPreOutHospInfo:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ–°å¢žå®ŒæˆæŽ¥è¯Šä¿¡æ¯
     */
    @ApiOperation("新增完成接诊信息")
    @PostMapping("/addFinshJZInfo")
    public Map<String, Object> addFinshJZInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addFinshJZInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addFinshJZInfo:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ–°å¢žå®ŒæˆæŽ¥è¯Šä¿¡æ¯
     */
    @ApiOperation("新增疾病信息")
    @PostMapping("/addDiseaseInfo")
    public Map<String, Object> addDiseaseInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addDiseaseInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addDiseaseInfo:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ–°å¢žç—…区信息
     */
    @ApiOperation("新增病区信息")
    @PostMapping("/addWardAreaInfo")
    public Map<String, Object> addWardAreaInfo(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addWardAreaInfo(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addWardAreaInfo:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ£€æŸ¥ç”³è¯·æœåŠ¡/检查修改服务
     */
    @ApiOperation("检查申请服务")
    @PostMapping("/addInspectService")
    public Map<String, Object> addInspectService(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addInspectService(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addInspectService:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    /**
     * æ£€æŸ¥æŠ¥å‘ŠæœåŠ¡
     */
    @ApiOperation("检查报告服务")
    @PostMapping("/addInspectBGService")
    public Map<String, Object> addInspectBGService(@RequestBody Map dataMap) {
        Boolean aBoolean = true;
        try {
            aBoolean = serviceExternalService.addInspectBGService(dataMap);
        } catch (Exception e) {
            e.printStackTrace();
            log.error("serviceExternal---addInspectBGService:{}", e.getMessage());
            aBoolean = false;
        }
        return returnParam(aBoolean, dataMap);
    }
    private Map<String, Object> returnParam(Boolean b, Map dataMap) {
        Map yeWuXX = (Map) dataMap.get("YeWuXX");
        String XiaoXiID = (String) yeWuXX.get("XiaoXiID");
        Map<String, Object> map = new HashMap<>();
        if (b) {
            map.put("Code", "0");
            map.put("Message", "success");
        } else {
            map.put("Code", "500");
            map.put("Message", "error");
        }
        Map<String, Object> map2 = new HashMap<>();
        map2.put("XiaoXiID", XiaoXiID);
        map2.put("ChuangJianSJ", new Date());
        map.put("Data", map2);
        return map;
    }
}
smartor/src/main/java/com/smartor/domain/ServiceSLTDCommonVO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,49 @@
package com.smartor.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel(value = "ServiceSLTDCommonVO", description = "省立同德公共字段")
@Data
public class ServiceSLTDCommonVO {
    @ApiModelProperty(value = "机构ID æœºæž„唯一编号")
    private String orgId;
    @ApiModelProperty(value = "机构名称 æœºæž„名称")
    private String orgName;
    @ApiModelProperty(value = "院区ID é™¢åŒºå”¯ä¸€ç¼–号")
    private String campusId;
    @ApiModelProperty(value = "院区名称 é™¢åŒºåç§°")
    private String campusName;
    @ApiModelProperty(value = "病区ID ç—…区唯一编号")
    private String areaId;
    @ApiModelProperty(value = "病区名称 ç—…区名称")
    private String areaName;
    @ApiModelProperty(value = "科室ID ç§‘室唯一编号")
    private String deptId;
    @ApiModelProperty(value = "科室名称 ç§‘室名称")
    private String deptName;
    @ApiModelProperty(value = "就诊记录ID  æ‚£è€…单次就诊唯一记录ID")
    private String healthcareRecordId;
    @ApiModelProperty(value = "就诊流水号  æ‚£è€…单次就诊唯一业务流水号")
    private String healthcareRecordNo;
    @ApiModelProperty(value = "病历号  æ‚£è€…院内卡号,机构内唯一")
    private String medicalRecordNo;
    @ApiModelProperty(value = "就诊卡号  æ‚£è€…当次就诊凭证号")
    private String medicalCardNo;
    @ApiModelProperty(value = "患者档案ID æ‚£è€…院内唯一编码")
    private String patientId;
}
smartor/src/main/java/com/smartor/domain/ServiceSLTDContactsResDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
package com.smartor.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel(value = "ServiceSLTDContactsResDTO", description = "省立同德联系人响应信息")
@Data
public class ServiceSLTDContactsResDTO {
    @ApiModelProperty(value = "机构ID æœºæž„唯一编号")
    private String orgId;
    @ApiModelProperty(value = "联系人姓名")
    private String name;
    @ApiModelProperty(value = "联系人关系编码")
    private String relationshipCode;
    @ApiModelProperty(value = "联系人关系名称")
    private String relationship;
    @ApiModelProperty(value = "联系人联系方式")
    private String telecom;
    @ApiModelProperty(value = "联系人地址")
    private String currentAddress;
}
smartor/src/main/java/com/smartor/domain/ServiceSLTDDiagnosisResDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
package com.smartor.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel(value = "ServiceSLTDDiagnosisResDTO", description = "省立同德诊断响应信息")
@Data
public class ServiceSLTDDiagnosisResDTO {
    @ApiModelProperty(value = "联系人姓名")
    private String name;
    @ApiModelProperty(value = "诊断icd编码")
    private String diagnosisDictCode;
    @ApiModelProperty(value = "诊断名称")
    private String diagnosisDictName;
    @ApiModelProperty(value = " è¯Šæ–­ç±»åˆ«    FH0176.01-入院诊断  FH0176.02-初步诊断x0;\n" + "    FH0176.03-修正诊断\n" + "    FH0176.04-补充诊断\n" + "    FH0176.05-出院诊断\n" + "    FH0176.06-主治诊断")
    private String diagnosisCategory;
    @ApiModelProperty(value = "诊断类型  1-中医诊断  2-西医诊断")
    private Integer recordType;
    @ApiModelProperty(value = "是否主诊断   1-主诊断 0-非主诊断")
    private Integer isMainDiagnosis;
}
smartor/src/main/java/com/smartor/domain/ServiceSLTDInhospReqVO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,85 @@
package com.smartor.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@ApiModel(value = "ServiceSLTDCommonReqVO", description = "省立同德出入院请求信息")
@Data
public class ServiceSLTDInhospReqVO {
    @ApiModelProperty(value = "机构ID æœºæž„唯一编号")
    private String orgId;
    @ApiModelProperty(value = "院区ID")
    private Long campusId;
    @ApiModelProperty(value = "患者姓名   å¿…填一个")
    private String patientNamex0;
    @ApiModelProperty(value = "身份证号   å¿…填一个")
    private String idCardNox0;
    @ApiModelProperty(value = "病区id å¿…填一个")
    private Long areaId;
    @ApiModelProperty(value = "科室ID å¿…填一个")
    private Long deptId;
    @ApiModelProperty(value = "科室ID集合")
    private List<Long> deptIdList;
    @ApiModelProperty(value = "诊疗记录号 å¿…填一个")
    private String healthcareRecordNo;
    @ApiModelProperty(value = "诊疗记录号集合")
    private List<String> healthcareRecordNoListx0;
    @ApiModelProperty(value = "病历号 å¿…填一个")
    private String medicalRecordNo;
    @ApiModelProperty(value = "诊疗记录Id å¿…填一个")
    private Long healthcareRecordId;
    @ApiModelProperty(value = "诊疗记录ID集合")
    private List<Long> idList;
    @ApiModelProperty(value = "就诊卡号 å¿…填一个")
    private String medicalCardNo;
    @ApiModelProperty(value = "入院时间-开始时间")
    private String startHeadTime;
    @ApiModelProperty(value = "入院时间-结束时间 yyyy-MM-dd")
    private String startTailTimex0;
    @ApiModelProperty(value = "出院时间-开始时间 yyyy-MM-dd")
    private String preOutHospitalHeadDatex0;
    @ApiModelProperty(value = "出院时间-结束时间 yyyy-MM-dd")
    private String preOutHospitalTailDatex0;
    @ApiModelProperty(value = "就诊时间-开始时间 :   é—¨è¯Šè¯Šç–—记录为号源时间  ä½é™¢è¯Šç–—记录为入院登记时间 yyyy-MM-dd")
    private String encounterTimeStart;
    @ApiModelProperty(value = "就诊时间-结束时间 yyyy-MM-dd")
    private String encounterTimeEnd;
    @ApiModelProperty(value = "出院结算时间-开始时间 yyyy-MM-dd")
    private String outHospitalSettleHeadDate;
    @ApiModelProperty(value = "出院结算时间-结束时间 yyyy-MM-dd")
    private String outHospitalSettleTailDate;
    @ApiModelProperty(value = "诊疗类型: FH0108.01-门诊  FH0108.02-住院   FH0108.03-急诊  FH0108.04-留观" + "FH0108.05-抢救FH0108.06-门诊体检   FH0108.07-住院体检")
    private List<String> healthcareRecordTypeList;
    @ApiModelProperty(value = "诊疗状态  å‚考值域文档2.6")
    private List<String> statusList;
    @ApiModelProperty(value = "是否取最近一次诊疗信息  é»˜è®¤ä¸ºfalse")
    private Boolean recently;
}
smartor/src/main/java/com/smartor/domain/ServiceSLTDInhospResDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,191 @@
package com.smartor.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@ApiModel(value = "ServiceSLTDCommonReqDTO", description = "省立同德出入院响应信息")
@Data
public class ServiceSLTDInhospResDTO {
    @ApiModelProperty(value = "机构ID æœºæž„唯一编号")
    private String orgId;
    @ApiModelProperty(value = "诊疗记录id  æ‚£è€…每次就诊都不相同")
    private Long healthcareRecordId;
    @ApiModelProperty(value = "诊疗记录号 æ‚£è€…每次就诊都不相同")
    private String healthcareRecordNo;
    @ApiModelProperty(value = "患者id æ‚£è€…每次就诊都相同")
    private Long patientId;
    @ApiModelProperty(value = "患者名称")
    private String patientName;
    @ApiModelProperty(value = "拼音")
    private String pinyin;
    @ApiModelProperty(value = "民族")
    private String nation;
    @ApiModelProperty(value = "居民身份证号")
    private String idCardNo;
    @ApiModelProperty(value = "诊疗次数")
    private Integer healthcareRecordTimes;
    @ApiModelProperty(value = "住院次数")
    private Integer hospitalizationNumber;
    @ApiModelProperty(value = "就诊卡id")
    private Long medicalCardId;
    @ApiModelProperty(value = "就诊卡类型")
    private String medicalCardType;
    @ApiModelProperty(value = "就诊卡类型名称")
    private String medicalCardTypeName;
    @ApiModelProperty(value = "就诊卡号")
    private String medicalCardNo;
    @ApiModelProperty(value = "病历号  æ‚£è€…每次就诊都相同")
    private String medicalRecordNo;
    @ApiModelProperty(value = "性别描述")
    private String gender;
    @ApiModelProperty(value = "性别编码  æ€§åˆ«ç¼–码字典:GB/T2261.1.0-未知的性别\n" + "    GB/T2261.1.1-男\n" + "    GB/T2261.1.2-女\n" + "    GB/T2261.1.9-未说明的性别")
    private String genderCode;
    @ApiModelProperty(value = "年龄")
    private String age;
    @ApiModelProperty(value = "地址")
    private String address;
    @ApiModelProperty(value = "生日")
    private String birthday;
    @ApiModelProperty(value = "手机号")
    private String phone;
    @ApiModelProperty(value = "病区id")
    private Long areaId;
    @ApiModelProperty(value = "病区名称")
    private String areaName;
    @ApiModelProperty(value = "房间id")
    private Long roomId;
    @ApiModelProperty(value = "房号")
    private String roomNumber;
    @ApiModelProperty(value = "床位id")
    private Long bedId;
    @ApiModelProperty(value = "床号")
    private String bedNumber;
    @ApiModelProperty(value = "护理级别")
    private String nursingLevel;
    @ApiModelProperty(value = "入院登记时间")
    private String encounterTime;
    @ApiModelProperty(value = "入院时间")
    private String startTimex0;
    @ApiModelProperty(value = "出院时间")
    private String preOutHospitalDatex0;
    @ApiModelProperty(value = "结算时间")
    private String outHospitalSettleDatex0;
    @ApiModelProperty(value = "诊断编码:  æœ¬æ¬¡å°±è¯Šæ‚£è€…所有诊断对应的icd编码,通过“、”分隔")
    private String diagnosisCode;
    @ApiModelProperty(value = "诊断名称 æœ¬æ¬¡å°±è¯Šæ‚£è€…所有诊断名称,通过“、”分隔")
    private String diagnosisName;
    @ApiModelProperty(value = "诊疗状态 å‚考值域文档2.6")
    private String healthcareRecordStatus;
    @ApiModelProperty(value = "诊疗类型:  FH0108.01-门诊\n" + "    FH0108.02-住院\n" + "    FH0108.03-急诊\n" + "    FH0108.04-留观\n" + "    FH0108.05-抢救FH0108.06-门诊体检\n" + "    FH0108.07-住院体检")
    private String healthcareType;
    @ApiModelProperty(value = "科室id")
    private Long deptId;
    @ApiModelProperty(value = "科室名称")
    private String deptName;
    @ApiModelProperty(value = "医生id")
    private Long doctorId;
    @ApiModelProperty(value = "医生姓名")
    private String doctorName;
    @ApiModelProperty(value = "诊疗周期ID")
    private Long healthcarePeriodId;
    @ApiModelProperty(value = "最新一次入院时间  ä¸Žåˆ›å»ºæ—¶é—´ä¸€è‡´x0")
    private String lastEncounterTimex0;
    @ApiModelProperty(value = "主管护士ID")
    private Long chiefNurseId;
    @ApiModelProperty(value = "主管护士名称")
    private String chiefNurseName;
    @ApiModelProperty(value = "费用类别")
    private String costCategoryName;
    @ApiModelProperty(value = "费用类别code")
    private String costCategoryCode;
    @ApiModelProperty(value = "费用性质")
    private String costNatureName;
    @ApiModelProperty(value = "费用性质code")
    private String costNatureCode;
    @ApiModelProperty(value = "文化程度编码")
    private String educationCode;
    @ApiModelProperty(value = "文化程度描述")
    private String education;
    @ApiModelProperty(value = "是否新生儿")
    private Boolean neonatal;
    @ApiModelProperty(value = "婚姻状况编码")
    private String marriageCode;
    @ApiModelProperty(value = "婚姻状况描述")
    private String marriage;
    @ApiModelProperty(value = "职业描述")
    private String occupationType;
    @ApiModelProperty(value = "职业编码")
    private String occupationTypeCode;
    @ApiModelProperty(value = "复诊状态   0-否,1-是")
    private Integer furtherConsultationStatus;
    @ApiModelProperty(value = "籍贯")
    private String nativePlace;
    @ApiModelProperty(value = "联系人列表")
    private List<ServiceSLTDContactsResDTO> residentContactInfos;
    @ApiModelProperty(value = "诊断列表")
    private List<ServiceSLTDDiagnosisResDTO> diagnosisList;
    @ApiModelProperty(value = "诊断列表")
    private List<ServiceSLTDMedicalRecordResDTO> medicalRecordDataList;
}
smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
@@ -76,68 +76,68 @@
    <sql id="selectPatMedInhospVo">
        select inhospid,
               patname,
               fuflag,
               management_doctor,
               management_doctor_code,
               fudate,
               fuperiod,
               futypecode,
               futypedesc,
               fuadvice,
               fuspecialadvice,
               remark,
               guid,
               operator,
               operator_id,
               out_way_id,
               out_way_name,
               nurse_id,
               nurse_name,
               deptcheck_flag,
               wardcheck_flag,
               diagcheck_flag,
               inhospstate,
               patno,
               long_task_reason,
               inhospno,
               serialnum,
               hospitalname,
               hospitalcode,
               hospitaldistrictcode,
               hospitaldistrictname,
               icd10code,
               diagname,
               starttime,
               endtime,
               deptcode,
               deptname,
               roomno,
               bed_no,
               orgid,
               del_flag,
               update_by,
               update_time,
               create_by,
               create_time,
               isupload,
               upload_time,
               patid,
               leavediagname,
               leaveicd10code,
               drcode,
               drname,
               schemestatus,
               generalschemestatus,
               leaveldeptcode,
               leaveldeptname,
               hospitaldistrictid,
               leavehospitaldistrictcode,
               leavehospitaldistrictname,
               leavehospitaldistrictid,
               deptid,
               leaveldeptid,
               schemetime
        patname,
        fuflag,
        management_doctor,
        management_doctor_code,
        fudate,
        fuperiod,
        futypecode,
        futypedesc,
        fuadvice,
        fuspecialadvice,
        remark,
        guid,
        operator,
        operator_id,
        out_way_id,
        out_way_name,
        nurse_id,
        nurse_name,
        deptcheck_flag,
        wardcheck_flag,
        diagcheck_flag,
        inhospstate,
        patno,
        long_task_reason,
        inhospno,
        serialnum,
        hospitalname,
        hospitalcode,
        hospitaldistrictcode,
        hospitaldistrictname,
        icd10code,
        diagname,
        starttime,
        endtime,
        deptcode,
        deptname,
        roomno,
        bed_no,
        orgid,
        del_flag,
        update_by,
        update_time,
        create_by,
        create_time,
        isupload,
        upload_time,
        patid,
        leavediagname,
        leaveicd10code,
        drcode,
        drname,
        schemestatus,
        generalschemestatus,
        leaveldeptcode,
        leaveldeptname,
        hospitaldistrictid,
        leavehospitaldistrictcode,
        leavehospitaldistrictname,
        leavehospitaldistrictid,
        deptid,
        leaveldeptid,
        schemetime
        from pat_med_inhosp
    </sql>
@@ -419,7 +419,7 @@
        SELECT GROUP_CONCAT(d.tagname, ', ')
        FROM pat_archivetag d
        WHERE d.patid = #{patid}
          AND d.del_flag = 0
        AND d.del_flag = 0
    </select>
@@ -576,7 +576,8 @@
        deptcheck_flag, wardcheck_flag, diagcheck_flag, long_task_reason,
        nurse_id, nurse_name, out_way_id, out_way_name, guid,
        operator, operator_id, inhospno, remark,
        fuflag, fudate, fuperiod, futypecode, futypedesc, fuadvice, fuspecialadvice, management_doctor, management_doctor_doctor
        fuflag, fudate, fuperiod, futypecode, futypedesc, fuadvice, fuspecialadvice, management_doctor,
        management_doctor_doctor
        )
        values
        <foreach collection="list" item="item" separator=",">
@@ -764,22 +765,60 @@
    </select>
    <select id="selectPatMedInhospCount" parameterType="com.smartor.domain.PatMedReq"
            resultType="com.smartor.domain.PatMedRes">
        SELECT SUM( rs ) AS rs,
        SUM( rc ) AS rc
        FROM (
        SELECT
        COUNT(1) AS rc,
        COUNT(DISTINCT patid) AS rs
        0 AS rs
        FROM
        pat_med_inhosp
        <where>
            del_flag=0
            <if test="orgid != null">
                AND orgid = #{orgid}
            </if>
            <if test="zy != null">
                and inhospstate=0
                and date_format(starttime,'%y%m%d') &gt;= date_format(#{startDate},'%y%m%d')
                and date_format(starttime,'%y%m%d') &lt;= date_format(#{endDate},'%y%m%d')
                <if test="deptcodeList != null   and deptcodeList.size() > 0">
                    and deptcode in
                    <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
                        #{deptcode}
                    </foreach>
                </if>
            </if>
            <if test="cy != null">
                and inhospstate=1
                and date_format(endtime,'%y%m%d') &gt;= date_format(#{startDate},'%y%m%d')
                and date_format(endtime,'%y%m%d') &lt;= date_format(#{endDate},'%y%m%d')
                <if test="deptcodeList != null   and deptcodeList.size() > 0">
                    and leaveldeptcode in
                    <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
                        #{deptcode}
                    </foreach>
                </if>
            </if>
        </where>
        union all
        select
        0 AS rc,
        count(1) AS rs
        FROM
        service_subtask
        <where>
            del_flag = 0
            and service_type=2
            <if test="orgid != null">
                AND orgid = #{orgid}
            </if>
            <if test="startDate != null">
                AND date_format( visit_time, '%y%m%d' ) &gt;= date_format( #{startDate}, '%y%m%d' )
            </if>
            <if test="endDate != null">
                AND date_format( visit_time, '%y%m%d' ) &lt;= date_format(#{endDate},'%y%m%d')
            </if>
            <if test="deptcodeList != null   and deptcodeList.size() > 0">
                and deptcode in
@@ -788,5 +827,6 @@
                </foreach>
            </if>
        </where>
        ) AS combined_data
    </select>
</mapper>
smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
@@ -351,13 +351,19 @@
    <select id="selectPatMedOuthospCount" parameterType="com.smartor.domain.PatMedReq"
            resultType="com.smartor.domain.PatMedRes">
        SELECT SUM( rs ) AS rs,
        SUM( rc ) AS rc
        FROM (
        SELECT
        COUNT(id) AS rc,
        COUNT(DISTINCT patid) AS rs
        0 AS rs
        FROM
        pat_med_outhosp
        <where>
            del_flag=0
            <if test="orgid != null">
                and orgid = #{orgid}
            </if>
            and date_format(admitdate,'%y%m%d') &gt;= date_format(#{startDate},'%y%m%d')
            and date_format(admitdate,'%y%m%d') &lt;= date_format(#{endDate},'%y%m%d')
            <if test="deptcodeList != null and deptcodeList.size()>0">
@@ -367,6 +373,32 @@
                </foreach>
            </if>
        </where>
        union all
        select
        0 AS rc,
        count(1) AS rs
        FROM
        service_subtask
        <where>
            del_flag = 0
            and service_type=3
            <if test="orgid != null">
                and orgid = #{orgid}
            </if>
            <if test="startDate != null">
                AND date_format( visit_time, '%y%m%d' ) &gt;= date_format( #{startDate}, '%y%m%d' )
            </if>
            <if test="endDate != null">
                AND date_format( visit_time, '%y%m%d' ) &lt;= date_format(#{endDate},'%y%m%d')
            </if>
            <if test="deptcodeList != null and deptcodeList.size()>0">
                and deptcode in
                <foreach collection="deptcodeList" item="deptcode" open="(" separator="," close=")">
                    #{deptcode}
                </foreach>
            </if>
        </where>
        ) AS combined_data
    </select>
    <select id="getDeptRanking" parameterType="com.smartor.domain.PatMedReq" resultType="com.smartor.domain.PatMedRes">
smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -1227,8 +1227,12 @@
        0 AS pmiCount,
        0 AS pmoCount
        FROM service_subtask
        WHERE visit_time BETWEEN #{startDate} AND #{endDate}
        AND del_flag = '0'
        WHERE
        del_flag = '0'
        <if test="startDate != null and endDate != null">
            and date_format(visit_time,'%y%m%d') &gt;= date_format(#{startDate},'%y%m%d')
            and date_format(visit_time,'%y%m%d') &lt;= date_format(#{endDate},'%y%m%d')
        </if>
        <if test="orgid != null">
            AND orgid = #{orgid}
@@ -1297,12 +1301,16 @@
        </choose>
        0 AS dischargeFollowCount,
        0 AS outpatientFollowCount,
        COUNT(DISTINCT patid) AS pmiCount,
        COUNT( patid) AS pmiCount,
        0 AS pmoCount
        FROM pat_med_inhosp
        WHERE endtime BETWEEN #{startDate} AND #{endDate}
        AND del_flag = '0'
        WHERE del_flag = '0'
        <if test="startDate != null and endDate != null">
            and date_format(endtime,'%y%m%d') &gt;= date_format(#{startDate},'%y%m%d')
            and date_format(endtime,'%y%m%d') &lt;= date_format(#{endDate},'%y%m%d')
        </if>
        AND inhospstate=1
        <if test="orgid != null">
            AND orgid = #{orgid}
        </if>
@@ -1364,11 +1372,13 @@
        0 AS dischargeFollowCount,
        0 AS outpatientFollowCount,
        0 AS pmiCount,
        COUNT(DISTINCT patid) AS pmoCount
        COUNT( patid) AS pmoCount
        FROM pat_med_outhosp
        WHERE admitdate BETWEEN #{startDate} AND #{endDate}
        AND del_flag = '0'
        WHERE del_flag = '0'
        <if test="startDate != null and endDate != null">
            and date_format(admitdate,'%y%m%d') &gt;= date_format(#{startDate},'%y%m%d')
            and date_format(admitdate,'%y%m%d') &lt;= date_format(#{endDate},'%y%m%d')
        </if>
        <if test="orgid != null">
            AND orgid = #{orgid}
        </if>