|
@ -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)
|