LAPTOP-KB9HII50\70708 10 hónapja
szülő
commit
1d1942676c

+ 2 - 1
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/consult/PatientConsultEndpoint.java

@ -368,6 +368,7 @@ public class PatientConsultEndpoint extends EnvelopRestEndpoint {
            @ApiParam(name = "patientid", value = "居民ID") @RequestParam(value = "patientid", required = false) String patientid,
            @ApiParam(name = "orgCode", value = "机构code") @RequestParam(value = "orgCode", required = false) String orgCode,
            @ApiParam(name = "dept", value = "部门code") @RequestParam(value = "dept", required = false) String dept,
            @ApiParam(name = "diseaseId", value = "专病id") @RequestParam(value = "diseaseId", required = false)String diseaseId,
            @ApiParam(name = "diseaseKey", value = "疾病名称关键字") @RequestParam(value = "diseaseKey", required = false) String diseaseKey,
            @ApiParam(name = "doctorNameKey", value = "医生名称关键字") @RequestParam(value = "doctorNameKey", required = false) String doctorNameKey,
            @ApiParam(name = "jobTitleNameKey", value = "医生职称关键字") @RequestParam(value = "jobTitleNameKey", required = false) String jobTitleNameKey,
@ -385,7 +386,7 @@ public class PatientConsultEndpoint extends EnvelopRestEndpoint {
        try {
            logger.info("findDoctorByHospitalAndDiseaseAndDept start:" + DateUtil.dateToStr(new Date(), "yyyy-MM-dd HH:mm:ss:SSS"));
            return prescriptionService.findDoctorByHospitalAndDiseaseAndDept2(iswork, patientid,
                    orgCode, dept,
                    orgCode, dept,diseaseId,
                    diseaseKey, doctorNameKey,
                    jobTitleNameKey, outpatientType,
                    keyName, workingTime, consultStatus, chargType, consutlSort, isAttention,isNurse, page, pagesize);

+ 3 - 50
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/patient/PatientNoLoginEndPoint.java

@ -314,6 +314,8 @@ public class PatientNoLoginEndPoint extends EnvelopRestEndpoint {
                                                                @RequestParam(value = "patientid", required = false)String patientid,
                                                            @ApiParam(name = "dept", value = "部门code")
                                                             @RequestParam(value = "dept", required = false)String dept,
                                                            @ApiParam(name = "diseaseId", value = "专病id")
                                                                @RequestParam(value = "diseaseId", required = false)String diseaseId,
                                                            @ApiParam(name = "diseaseKey", value = "疾病名称关键字")
                                                             @RequestParam(value = "diseaseKey", required = false)String diseaseKey,
                                                            @ApiParam(name = "doctorNameKey", value = "医生名称关键字")
@ -344,7 +346,7 @@ public class PatientNoLoginEndPoint extends EnvelopRestEndpoint {
        try {
            logger.info("findDoctorByHospitalAndDiseaseAndDept start:"+ DateUtil.dateToStr(new Date(),"yyyy-MM-dd HH:mm:ss:SSS"));
            return prescriptionService.findDoctorByHospitalAndDiseaseAndDept2(iswork,patientid,
                    orgCode,dept,
                    orgCode,dept,diseaseId,
                    diseaseKey,doctorNameKey,
                    jobTitleNameKey,outpatientType,
                    keyName,workingTime,consultStatus,chargType,consutlSort,isAttention,isNurse,page,pagesize);
@ -352,55 +354,6 @@ public class PatientNoLoginEndPoint extends EnvelopRestEndpoint {
            return  failedMixEnvelopException2(e);
        }
    }
    @GetMapping("/testFrontQuery")
    @ApiOperation(value = "根据疾病名称,热门部门查询医生", notes = "根据疾病名称,热门部门查询医生")
    public MixEnvelop findDoctorByHospitalAndDiseaseAndDept2(@ApiParam(name = "iswork", value = "是否过滤排班,1是")
                                                            @RequestParam(value = "iswork", required = true)String iswork,
                                                            @ApiParam(name = "orgCode", value = "机构code")
                                                            @RequestParam(value = "orgCode", required = true,defaultValue = "350211A1002")String orgCode,
                                                            @ApiParam(name = "patientid", value = "patientid")
                                                            @RequestParam(value = "patientid", required = false)String patientid,
                                                            @ApiParam(name = "dept", value = "部门code")
                                                            @RequestParam(value = "dept", required = false)String dept,
                                                            @ApiParam(name = "diseaseKey", value = "疾病名称关键字")
                                                            @RequestParam(value = "diseaseKey", required = false)String diseaseKey,
                                                            @ApiParam(name = "doctorNameKey", value = "医生名称关键字")
                                                            @RequestParam(value = "doctorNameKey", required = false)String doctorNameKey,
                                                            @ApiParam(name = "jobTitleNameKey", value = "医生职称关键字")
                                                            @RequestParam(value = "jobTitleNameKey", required = false)String jobTitleNameKey,
                                                            @ApiParam(name = "outpatientType", value = "咨询类型1图文,2视频")
                                                            @RequestParam(value = "outpatientType", required = false)String outpatientType,
                                                            @ApiParam(name = "keyName", value = "姓名/科室/疾病模糊搜索关键字")
                                                            @RequestParam(value = "keyName", required = false)String keyName,
                                                            @ApiParam(name = "workingTime", value = "排班时间YYYY-MM-DD")
                                                            @RequestParam(value = "workingTime", required = false)String workingTime,
                                                            @ApiParam(name = "consultStatus", value = "在线状态")
                                                            @RequestParam(value = "consultStatus", required = false,defaultValue = "")String consultStatus,
                                                            @ApiParam(name = "chargType", value = "医生号别")
                                                            @RequestParam(value = "chargType", required = false,defaultValue = "")String chargType,
                                                            @ApiParam(name = "consutlSort", value = "咨询量排序")
                                                            @RequestParam(value = "consutlSort", required = true,defaultValue = "DESC")String consutlSort,
                                                            @ApiParam(name = "isAttention", value = "是否关注 1:关注 0:不关注 不传:查所有")
                                                            @RequestParam(value = "isAttention", required = false)String isAttention,
                                                             @ApiParam(name = "isNurse", value = "是否护师 1:是 0:否 不传:查所有")
                                                                 @RequestParam(value = "isNurse", required = false)String isNurse,
                                                            @ApiParam(name = "page", value = "第几页")
                                                            @RequestParam(value = "page",required = false) Integer page,
                                                            @ApiParam(name = "pagesize", value = "分页大小")
                                                            @RequestParam(value = "pagesize",required = false) Integer pagesize
    ) throws Exception{
        try {
            logger.info("findDoctorByHospitalAndDiseaseAndDept start:"+ DateUtil.dateToStr(new Date(),"yyyy-MM-dd HH:mm:ss:SSS"));
            return prescriptionService.findDoctorByHospitalAndDiseaseAndDept2(iswork,patientid,
                    orgCode,dept,
                    diseaseKey,doctorNameKey,
                    jobTitleNameKey,outpatientType,
                    keyName,workingTime,consultStatus,chargType,consutlSort,isAttention,isNurse,page,pagesize);
        } catch (Exception e){
            return  failedMixEnvelopException2(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.PatientNoLogin.findHotDeptAndDiseaseDict)
    @ApiOperation(value = "获取常见疾病、热门部门、医生拒绝接诊原因 字典", notes = "获取常见疾病、热门部门、医生拒绝接诊原因 字典")

+ 158 - 1
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/specialist/BaseDiseaseHospitalController.java

@ -2,6 +2,8 @@ package com.yihu.jw.hospital.endpoint.specialist;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.entity.base.sms.SmsTemplateDO;
import com.yihu.jw.entity.hospital.survey.BaseDiseaseSurveyDO;
import com.yihu.jw.entity.specialist.BaseDiseaseHospitalDO;
import com.yihu.jw.hospital.disease.service.BaseDiseaseHospitalService;
import com.yihu.jw.restmodel.web.Envelop;
@ -13,8 +15,13 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping(value = BaseHospitalRequestMapping.BaseDiseaseHospital.PREFIX)
@ -23,10 +30,160 @@ public class BaseDiseaseHospitalController extends EnvelopRestEndpoint {
    @Autowired
    private BaseDiseaseHospitalService baseDiseaseHospitalService;
    @Autowired
    private JdbcTemplate jdbcTemplate;
    @Autowired
    WlyyBusinessService wlyyBusinessService;
    @ApiOperation("疾病筛查管理发送短信")
    @PostMapping(value = "sendSms")
    public Envelop sendSms(@ApiParam(name = "header", value = "模板名称", required = true)
                                   @RequestParam(value = "header", required = true) String header,
                                   @ApiParam(name = "surveyCodes", value = "筛查code,多个逗号间隔", required = true)
                                   @RequestParam(value = "surveyCodes", required = true) String surveyCodes,
                                   @ApiParam(name = "mobiles", value = "手机号,多个逗号间隔", required = true)
                                   @RequestParam(value = "mobiles", required = true) String mobiles,
                                   @ApiParam(name = "doctor", value = "医生code", required = false)
                                   @RequestParam(value = "doctor", required = false) String doctor,
                                   @ApiParam(name = "smsTemplateId", value = "短信模板id", required = false)
                                   @RequestParam(value = "smsTemplateId", required = false) String smsTemplateId,
                                   @ApiParam(name = "content", value = "短信模板内容", required = true)
                                   @RequestParam(value = "content", required = true) String content) {
        try {
            if(StringUtils.isBlank(doctor)){
                doctor = getUID();
            }
            baseDiseaseHospitalService.sendSms(mobiles,surveyCodes,smsTemplateId,content,header,doctor);
            return success("发送成功");
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @GetMapping(value = "findThirdScreenList")
    @ApiOperation(value = "同安筛查记录")
    public Envelop findThirdScreenList(
            @ApiParam(value = "社区医院code") @RequestParam(value = "hospital", required = false) String hospital,
            @ApiParam(value = "病种类型code") @RequestParam(value = "diseaseSurveyCode", required = false) String diseaseSurveyCode,
            @ApiParam(value = "是否管理员1是 0否") @RequestParam(value = "isManager", required = true) String isManager,
            @ApiParam(value = "当前页") @RequestParam(value = "page") Integer page,
            @ApiParam(value = "显示记录数") @RequestParam(value = "size") Integer size,
            @ApiParam(value = "模板code,多个用逗号隔开") @RequestParam(value = "templateCode", required = false) String templateCode,
            @ApiParam(value = "居民姓名") @RequestParam(value = "patientName", required = false) String patientName,
            @ApiParam(value = "是否高危预警(0否 1是)") @RequestParam(value = "isDanger", required = false) String isDanger,
            @ApiParam(value = "开始时间") @RequestParam(value = "startDate", required = false) String startDate,
            @ApiParam(value = "结束时间") @RequestParam(value = "endDate", required = false) String endDate,
            @ApiParam(value = "管理状态 0未管理 1已管理 2 日常健康管理") @RequestParam(value = "manageStatus", required = false) String manageStatus
    ) {
        try {
            if(StringUtils.isBlank(templateCode)){
                String sql = "SELECT GROUP_CONCAT(survey_code) survey_code from base_disease_survey";
                if("0".equals(isManager)){
                    sql += " where doctor like '%"+getUID()+"%' ";
                }
                List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
                if(list.size()>0){
                    templateCode = list.get(0).get("survey_code")+"";
                }
            }
            if(StringUtils.isBlank(templateCode)){
                JSONObject json = new JSONObject();
                json.put("detailModelList",new ArrayList<>());
                json.put("currPage",page);
                json.put("totalPage",0);
                json.put("pageSize",size);
                json.put("message","查询成功");
                json.put("totalCount",0);
                json.put("status",200);
                return success(json);
            }
            return success(wlyyBusinessService.findThirdScreenList(hospital, patientName, startDate, endDate, templateCode,
                    isDanger, manageStatus, page, size));
        } catch (Exception e) {
            e.printStackTrace();
            return Envelop.getError("查询失败");
        }
    }
    @ApiOperation("按id查找短信模板")
    @PostMapping(value = "findSmsTemplate")
    public Envelop findSmsTemplate(@ApiParam(name = "id", value = "模板id", required = true)
                            @RequestParam(value = "id", required = true) String id) {
        try {
            return success(baseDiseaseHospitalService.findSmsTemplate(id));
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @ApiOperation("新增和修改短信模板")
    @PostMapping(value = "addOrUpdSmsTemplate")
    public Envelop addOrUpdSmsTemplate(@ApiParam(name = "json", value = "专病配置实体类json", required = true)
                                       @RequestParam(value = "json", required = true) String json) {
        try {
            SmsTemplateDO smsTemplateDO = toEntity(json, SmsTemplateDO.class);
            return success(baseDiseaseHospitalService.addOrUpdSmsTemplate(smsTemplateDO));
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @ApiOperation("短信模板分页")
    @GetMapping(value = "smsTemplatePage")
    public Envelop smsTemplatePage(@ApiParam(name = "header", value = "模板名称", required = false)
                                     @RequestParam(value = "header", required = false) String header,
                                     @ApiParam(name = "clientId", value = "固定传dsyy", required = false)
                                     @RequestParam(value = "clientId", required = false) String clientId,
                                     @ApiParam(name = "page", value = "页码", required = true)
                                     @RequestParam(value = "page", required = true) Integer page,
                                     @ApiParam(name = "size", value = "大小", required = true)
                                     @RequestParam(value = "size", required = true) Integer size) {
        try {
            return baseDiseaseHospitalService.smsTemplatePage(header,clientId, page, size);
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @ApiOperation("新增和修改疾病筛查配置")
    @PostMapping(value = "addOrUpd")
    public Envelop addOrUpd(@ApiParam(name = "json", value = "专病配置实体类json", required = true)
                                           @RequestParam(value = "json", required = true) String json) {
        try {
            BaseDiseaseSurveyDO diseaseSurveyDO = toEntity(json, BaseDiseaseSurveyDO.class);
            return success(baseDiseaseHospitalService.addOrUpd(diseaseSurveyDO));
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @ApiOperation("查询疾病筛查配置列表")
    @GetMapping(value = "diseaseSurveyPage")
    public Envelop diseaseSurveyPage(@ApiParam(name = "name", value = "疾病名称", required = false)
                                      @RequestParam(value = "name", required = false) String name,
                                      @ApiParam(name = "dept", value = "关联科室code", required = false)
                                      @RequestParam(value = "dept", required = false) String dept,
                                     @ApiParam(name = "doctor", value = "关联医生code", required = false)
                                         @RequestParam(value = "doctor", required = false) String doctor,
                                     @ApiParam(name = "surveyCode", value = "i健康疾病筛查code", required = false)
                                         @RequestParam(value = "surveyCode", required = false) String surveyCode,
                                     @ApiParam(name = "status", value = "1启用0禁用", required = false)
                                         @RequestParam(value = "status", required = false) String status,
                                      @ApiParam(name = "page", value = "页码", required = true)
                                      @RequestParam(value = "page", required = true) Integer page,
                                      @ApiParam(name = "size", value = "大小", required = true)
                                      @RequestParam(value = "size", required = true) Integer size) {
        try {
            return baseDiseaseHospitalService.diseaseSurveyPage(name,dept,doctor,surveyCode, status, page, size);
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @ApiOperation("新增/修改专病配置")
    @PostMapping(value = BaseHospitalRequestMapping.BaseDiseaseHospital.insertAndUpdate)
    public Envelop insertAndUpdateQuestion(@ApiParam(name = "json", value = "专病配置实体类json", required = true)

+ 14 - 0
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/rehabilitation/controller/DoctorRehabilitaionInfoController.java

@ -262,6 +262,20 @@ public class DoctorRehabilitaionInfoController extends EnvelopRestEndpoint {
        }
    }
    @RequestMapping(value = "planNumAndServiceTime", method = RequestMethod.GET)
    @ApiOperation("康复计划总数,及最近的服务项的服务日期")
    public String planNumAndServiceTime(
            @ApiParam(name = "patientId", value = "居民", required = false) @RequestParam(value = "patientId", required = true) String patientId,
            @ApiParam(name = "diseaseId", value = "专病id", required = false) @RequestParam(value = "diseaseId", required = true) String diseaseId
    ) {
        try {
            return write(200, "请求成功", "data", rehabilitationInfoService.planNumAndServiceTime(patientId, diseaseId));
        } catch (Exception e) {
            e.printStackTrace();
            return error(-1, "操作失败");
        }
    }
    /**
     * 查询居民的康复计划

+ 20 - 0
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/rehabilitation/service/RehabilitationInfoService.java

@ -1233,6 +1233,26 @@ public class RehabilitationInfoService {
        return map;
    }
    //康复计划总数,及最近的服务项的服务日期(未完成 当前时间之后)
    public JSONObject planNumAndServiceTime(String patientId, String diseaseId){
        JSONObject json = new JSONObject();
        String sql = "SELECT COUNT(id) from wlyy_patient_rehabilitation_plan WHERE patient= '"+patientId+"' and disease='"+diseaseId+"'";
        int planNum = jdbcTemplate.queryForObject(sql, Integer.class);
        String sql2 = "SELECT i.plan_time from wlyy_patient_rehabilitation_plan p,base_service_item_plan i  " +
                "WHERE p.patient= '"+patientId+"' and p.disease='"+diseaseId+"' " +
                "and p.id = i.plan_id and i.`status`= 0 and i.plan_time>'"+DateUtil.getStringDate()+"' " +
                "ORDER BY i.plan_time desc LIMIT 1";
        List<Map<String, Object>> list = jdbcTemplate.queryForList(sql2);
        String planTime = "";
        if(list.size() > 0){
            planTime = list.get(0).get("plan_time")+"";
        }
        json.put("planNum",planNum);
        json.put("planTime",planTime);
        return json;
    }
    /**
     * todo 还需要代办项目还需要重新join一张新表 todayTaskCount 今日任务项,等后面在整
     */