Browse Source

Merge branch 'dev' of wujunjie/patient-co-management into dev

lyr 8 years ago
parent
commit
9c292c52c6

+ 3 - 3
patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/template/DoctorGuidanceTempDao.java

@ -1,7 +1,7 @@
package com.yihu.wlyy.repository.template;
import com.yihu.wlyy.entity.template.DoctorGuidanceTemp;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
@ -16,9 +16,9 @@ public interface DoctorGuidanceTempDao extends PagingAndSortingRepository<Doctor
    int deleteByCode(String code);
    @Query("select t from DoctorGuidanceTemp t where t.owner = ?1 order by t.sendTimes desc")
    @Query("select t.code,t.owner,t.sendTimes,t.createTime,t.modelName from DoctorGuidanceTemp t where t.owner = ?1 order by t.sendTimes desc")
    List<DoctorGuidanceTemp> findByOwner(String owner);
    @Query("select t from DoctorGuidanceTemp t where t.owner = ?1 or t.owner = 'system' order by t.sendTimes desc")
    @Query("select t.code,t.owner,t.sendTimes,t.createTime,t.modelName from DoctorGuidanceTemp t where t.owner = ?1 or t.owner = 'system' order by t.sendTimes desc")
    List<DoctorGuidanceTemp> findByOwnerAndSystem(String owner);
}

+ 37 - 13
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/health/PatientHealthGuidanceService.java

@ -1,29 +1,28 @@
package com.yihu.wlyy.service.app.health;
import java.util.Date;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.patient.Patient;
import com.yihu.wlyy.entity.patient.PatientHealthGuidance;
import com.yihu.wlyy.entity.patient.SignFamily;
import com.yihu.wlyy.repository.doctor.DoctorDao;
import com.yihu.wlyy.repository.patient.PatientDao;
import com.yihu.wlyy.repository.patient.PatientHealthGuidanceDao;
import com.yihu.wlyy.repository.patient.SignFamilyDao;
import com.yihu.wlyy.service.BaseService;
import com.yihu.wlyy.task.PushMsgTask;
import com.yihu.wlyy.util.DateUtil;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.support.GenericBeanDefinition;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.patient.Patient;
import com.yihu.wlyy.entity.patient.PatientHealthGuidance;
import com.yihu.wlyy.repository.doctor.DoctorDao;
import com.yihu.wlyy.repository.patient.PatientDao;
import com.yihu.wlyy.repository.patient.PatientHealthGuidanceDao;
import com.yihu.wlyy.service.BaseService;
import com.yihu.wlyy.task.PushMsgTask;
import com.yihu.wlyy.util.DateUtil;
import java.util.Date;
/**
 * 健康指导业务处理类
@ -42,6 +41,8 @@ public class PatientHealthGuidanceService extends BaseService {
	private PatientHealthGuidanceDao patientHealthGuidanceDao;
	@Autowired
	SignFamilyDao signFamilyDao;
	@Autowired
	JdbcTemplate jdbcTemplate;
	public JSONObject findById(Long id){
		PatientHealthGuidance guidance = patientHealthGuidanceDao.findOne(id);
@ -63,6 +64,26 @@ public class PatientHealthGuidanceService extends BaseService {
		}
	}
	/**
	 * 更改健康指导阅读状态
	 * @param id
	 * @return
	 */
	public void modifyStatus(String id,String type) {
		if("1".equals(type)){
//            一键设置居民未读指导
			String sql = "UPDATE wlyy_patient_health_guidance wphg " +
					"SET wphg .read_status = 1  "+
					"WHERE wphg.patient = ?";
			jdbcTemplate.update(sql,id);
		}else {
			String sql = "UPDATE wlyy_patient_health_guidance wphg " +
					"SET wphg .read_status = 1  " +
					"WHERE wphg.id = ?";
			jdbcTemplate.update(sql, id);
		}
	}
	/**
	 * 保存健康指导
	 * @param guidance
@ -213,11 +234,14 @@ public class PatientHealthGuidanceService extends BaseService {
				if (temp == null || temp.length != 6) {
					continue;
				}
//				控制返回内容50字以内
				String content = temp[3].toString().substring(0,50);
				JSONObject json = new JSONObject();
				json.put("name", temp[0]);
				json.put("photo", temp[1]);
				json.put("id", temp[2]);
				json.put("content", temp[3]);
//				json.put("content", temp[3]);
				json.put("content", content);
				json.put("czrq", DateUtil.dateToStrLong((Date) temp[4]));
				json.put("level", temp[5]);
				array.put(json);

+ 18 - 3
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/template/DoctorGuidanceTempService.java

@ -54,12 +54,18 @@ public class DoctorGuidanceTempService extends BaseService {
        String modelName= (String)temp.get("model_name");
        String content= (String)temp.get("content");
        String imagesUrl= (String)temp.get("images_url");
//        多图按逗号分割保存成数组
        String [] imagesArray = imagesUrl.split(",");
        String head = "htttp://";
        for (int i=0;i<imagesArray.length;i++) {
            imagesArray[i]=head +imagesArray[i];
        }
        String createTime = (String)temp.get("create_time").toString();
        String sendTimes = (String)temp.get("send_times").toString();
        JSONObject json = new JSONObject();
        json.put("modelName",modelName);
        json.put("content",content);
        json.put("imagesUrl",imagesUrl);
        json.put("imagesUrls",imagesArray);
        json.put("createTime",createTime);
        json.put("sendTimes",sendTimes);
        return json;
@ -94,14 +100,16 @@ public class DoctorGuidanceTempService extends BaseService {
     * @param content 指导内容
     * @return
     */
    public DoctorGuidanceTemp modify(String code, String content) throws Exception {
    public DoctorGuidanceTemp modify(String code, String modelName, String content, String imagesUrl) throws Exception {
        DoctorGuidanceTemp guidanceTemp = guidanceTempDao.findByCode(code);
        if (guidanceTemp == null) {
            throw new Exception("模板不存在");
        }
        guidanceTemp.setModelName(modelName);
        guidanceTemp.setContent(content);
        guidanceTemp.setImagesUrl(imagesUrl);
        return guidanceTempDao.save(guidanceTemp);
    }
@ -116,8 +124,15 @@ public class DoctorGuidanceTempService extends BaseService {
        String[] codes = code.split(",");
        if (codes != null && codes.length > 0) {
            String sql = "SELECT t.owner FROM wlyy_doctor_guidance_temp t WHERE t.code=?";
            String owner = jdbcTemplate.queryForObject(sql,String.class,code);
            for (String temp : codes) {
                guidanceTempDao.deleteByCode(temp);
                if(!"system".equals(owner)){
//                    String sqlDetele = "DELETE FROM wlyy_doctor_guidance_temp WHERE code=?";
                    guidanceTempDao.deleteByCode(temp);
//                    jdbcTemplate.update(sqlDetele,temp);
                }
            }
        }

+ 9 - 2
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/template/DoctorGuidanceTempController.java

@ -111,7 +111,10 @@ public class DoctorGuidanceTempController extends BaseController {
    @RequestMapping(value = "/modify", method = RequestMethod.POST)
    @ApiOperation(value = "修改指导模板")
    public String modify(@RequestParam @ApiParam(value = "指导编码") String code,
                         @RequestParam @ApiParam(value = "指导内容") String content) {
                         @RequestParam @ApiParam(value = "模板标题") String modelName,
                         @RequestParam @ApiParam(value = "指导内容") String content,
                         @RequestParam @ApiParam(value = "图片地址") String imagesUrl
                         ) {
        try {
            if (StringUtils.isEmpty(code)) {
                return error(-1, "请指定需修改的模板");
@ -121,7 +124,11 @@ public class DoctorGuidanceTempController extends BaseController {
                return error(-1, "内容不能为空");
            }
            DoctorGuidanceTemp temp = guidanceTempService.modify(code, content);
            if (StringUtils.isEmpty(modelName)||modelName.length()>10) {
                return error(-1, "内容10个汉字之内且不能为空");
            }
            DoctorGuidanceTemp temp = guidanceTempService.modify(code,modelName,content,imagesUrl);
            if (temp != null) {
                return write(200, "修改成功");

+ 33 - 11
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/health/PatientHealthGuidanceController.java

@ -1,6 +1,7 @@
package com.yihu.wlyy.web.patient.health;
import com.yihu.wlyy.entity.patient.PatientHealthGuidance;
import com.yihu.wlyy.service.app.health.PatientHealthGuidanceService;
import com.yihu.wlyy.web.BaseController;
import io.swagger.annotations.Api;
import org.json.JSONArray;
import org.json.JSONObject;
@ -8,12 +9,9 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.yihu.wlyy.service.app.health.PatientHealthGuidanceService;
import com.yihu.wlyy.web.BaseController;
/**
 * 患者端:健康指导控制类
 * @author George
@ -27,16 +25,35 @@ public class PatientHealthGuidanceController extends BaseController {
	@Autowired
	private PatientHealthGuidanceService patientHealthGuidanceService;
	/**
	 * 居民端一键已读
	 * @param
	 * @return
	 */
	@RequestMapping(value = "modifyStatus")
	@ResponseBody
	public String modifyStatus() {
		try {
			patientHealthGuidanceService.modifyStatus(getUID(),"1");
			return write(200, "设置成功!");
		} catch (Exception e) {
			error(e);
			return error(-1, "设置失败!");
		}
	}
	/**
	 * 查询患者的健康指导
	 * @param patient
	 * @return
	 */
	@RequestMapping(value = "list")
	@ResponseBody
	public String list(long id, int pagesize) {
	public String list(@RequestParam String id, @RequestParam String pagesize) {
		try {
			JSONArray array = patientHealthGuidanceService.findGuidanceByPatient(getUID(), id, pagesize);
			Long idl = Long.parseLong(id);
			int pageSize = Integer.parseInt(pagesize);
			JSONArray array = patientHealthGuidanceService.findGuidanceByPatient(getUID(), idl, pageSize);
			return write(200, "查询成功!", "list", array);
		} catch (Exception e) {
			error(e);
@ -52,13 +69,18 @@ public class PatientHealthGuidanceController extends BaseController {
	 */
	@RequestMapping(value = "/id")
	@ResponseBody
	public String getHealthGuidance(Long id){
	public String getHealthGuidance(@RequestParam  String id){
		try{
			if(id == null || id < 1){
			Long idl = Long.parseLong(id);
			if(idl == null || idl < 1){
				return error(-1,"参数错误");
			}
			JSONObject guidance = patientHealthGuidanceService.findById(id);
			JSONObject guidance = patientHealthGuidanceService.findById(idl);
//			修改医生给居民指导的阅读状态,改为已读
			patientHealthGuidanceService.modifyStatus(id,"0");
			return write(200,"查询成功","data",guidance);
		}catch (Exception e){
			return error(-1,"查询失败");