فهرست منبع

实现康复计划接口

humingfen 7 سال پیش
والد
کامیت
2f89b569bf

+ 14 - 0
common/common-request-mapping/src/main/java/com/yihu/jw/rm/rehabilitation/RehabilitationRequestMapping.java

@ -49,4 +49,18 @@ public class RehabilitationRequestMapping {
        public static final String findTreatmentProgramById = "findTreatmentProgramById";
    }
    public static class Planning {
        public static final String planning = api_rehabilitation_common + "/planning";
        public static final String findPlanningPage = "findPlanningPage";
        public static final String findTreatmentByProgramId = "findTreatmentByProgramId";
        public static final String api_create = "createPlanning";
        public static final String api_delete = "delPlanning";
        public static final String api_getById = "getPlanningById";
        public static final String api_update = "updatePlanning";
        public static final String findPlanningById = "findPlanningById";
    }
}

+ 61 - 0
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/rehabilitation/RehabilitationPlanningVO.java

@ -0,0 +1,61 @@
package com.yihu.jw.restmodel.rehabilitation;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.yihu.jw.restmodel.iot.common.BaseVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
/**
 * 康复计划表
 * @author humingfen on 2018/5/2.
 */
@JsonInclude(JsonInclude.Include.ALWAYS)
@ApiModel(value = "康复计划表", description = "康复计划表")
public class RehabilitationPlanningVO extends BaseVO implements Serializable {
    @ApiModelProperty("居民id")
    private String patientId;
    @ApiModelProperty("治疗方案id")
    private String programId;
    @ApiModelProperty("复检时间")
    private Date recheckTime;
    @ApiModelProperty("附加说明")
    private String description;
    public String getPatientId() {
        return patientId;
    }
    public void setPatientId(String patientId) {
        this.patientId = patientId;
    }
    public String getProgramId() {
        return programId;
    }
    public void setProgramId(String programId) {
        this.programId = programId;
    }
    public Date getRecheckTime() {
        return recheckTime;
    }
    public void setRecheckTime(Date recheckTime) {
        this.recheckTime = recheckTime;
    }
    public String getDescription() {
        return description;
    }
    public void setDescription(String description) {
        this.description = description;
    }
}

+ 1 - 1
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/rehabilitation/RehabilitationTreatmentProgramVO.java

@ -8,7 +8,7 @@ import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
/**
 * 就诊信息表
 * 治疗方案表
 * @author humingfen on 2018/4/27.
 */
@JsonInclude(JsonInclude.Include.ALWAYS)

+ 121 - 0
svr/svr-rehabilitation/src/main/java/com/yihu/rehabilitation/controller/RehabilitationPlanningController.java

@ -0,0 +1,121 @@
package com.yihu.rehabilitation.controller;
import com.yihu.jw.rehabilitation.RehabilitationPlanningDO;
import com.yihu.jw.rehabilitation.RehabilitationTreatmentProgramDO;
import com.yihu.jw.restmodel.common.Envelop;
import com.yihu.jw.restmodel.common.EnvelopRestController;
import com.yihu.jw.restmodel.rehabilitation.RehabilitationPlanningVO;
import com.yihu.jw.rm.rehabilitation.RehabilitationRequestMapping;
import com.yihu.rehabilitation.service.RehabilitationPlanningService;
import com.yihu.rehabilitation.service.RehabilitationTreatmentProgramService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
 * @author humingfen on 2018/5/2.
 */
@RestController
@RequestMapping(value = RehabilitationRequestMapping.Planning.planning)
@Api(tags = "康复计划相关操作", description = "康复计划相关操作")
public class RehabilitationPlanningController extends EnvelopRestController {
    @Autowired
    private RehabilitationPlanningService planningService;
    @Autowired
    private RehabilitationTreatmentProgramService TreatmentProgramService;
    @GetMapping(value = RehabilitationRequestMapping.Planning.findPlanningPage)
    @ApiOperation(value = "分页查找康复计划", notes = "分页查找康复计划")
    public Envelop<RehabilitationPlanningVO> findPlanningPage(@ApiParam(name = "patientId", value = "居民id", defaultValue = "")
                                                                              @RequestParam(value = "patientId", required = false) String patientId,
                                                              @ApiParam(name = "programId", value = "康复计划id", defaultValue = "")
                                                                              @RequestParam(value = "programId", required = false) String programId,
                                                              @ApiParam(name = "page", value = "第几页", defaultValue = "")
                                                                              @RequestParam(value = "page", required = false) Integer page,
                                                              @ApiParam(name = "size", value = "每页记录数", defaultValue = "")
                                                                              @RequestParam(value = "size", required = false) Integer size){
        try {
            if(page == null|| page < 0){
                page = 1;
            }
            if(size == null){
                size = 10;
            }
            return planningService.queryPlanningPage(page, size, patientId, programId);
        } catch (Exception e) {
            e.printStackTrace();
            return Envelop.getError(e.getMessage());
        }
    }
    @GetMapping(value = RehabilitationRequestMapping.Planning.api_create)
    @ApiOperation(value = "创建康复计划", notes = "创建康复计划")
    public Envelop<RehabilitationPlanningDO> createPlanning(@ApiParam(name = "jsonData", value = "方案基本信息Json", defaultValue = "")
                                                                            @RequestParam(value = "jsonData", required = false) String jsonData) {
        try {
            RehabilitationPlanningVO planningVO = toEntity(jsonData, RehabilitationPlanningVO.class);
            RehabilitationPlanningDO planningDO = convertToModel(planningVO, RehabilitationPlanningDO.class);
            return Envelop.getSuccess(RehabilitationRequestMapping.Common.message_success_create, planningService.create(planningDO));
        }catch (Exception e){
            e.printStackTrace();
            return Envelop.getError(e.getMessage());
        }
    }
    @GetMapping(value = RehabilitationRequestMapping.Planning.findPlanningById)
    @ApiOperation(value = "根据id查找治疗方案", notes = "根据id查找治疗方案")
    public Envelop<RehabilitationPlanningDO> findById(@ApiParam(name = "id", value = "id")
                                                              @RequestParam(value = "id", required = true) String id) {
        try {
            RehabilitationPlanningDO planningDO = planningService.findById(id);
            return Envelop.getSuccess(RehabilitationRequestMapping.Common.message_success_find, planningDO);
        } catch (Exception e) {
            e.printStackTrace();
            return Envelop.getError(e.getMessage());
        }
    }
    @GetMapping(value = RehabilitationRequestMapping.Planning.findTreatmentByProgramId)
    @ApiOperation(value = "根据programId查找治疗方案", notes = "根据programId查找治疗方案")
    public Envelop<RehabilitationPlanningDO> findTreatmentByProgramId(@ApiParam(name = "programId", value = "programId")
                                                      @RequestParam(value = "programId", required = true) String programId) {
        try {
            RehabilitationTreatmentProgramDO treatmentProgramDO = TreatmentProgramService.findById(programId);
            return Envelop.getSuccess(RehabilitationRequestMapping.Common.message_success_find, treatmentProgramDO);
        } catch (Exception e) {
            e.printStackTrace();
            return Envelop.getError(e.getMessage());
        }
    }
    @PostMapping(value = RehabilitationRequestMapping.Planning.api_update)
    @ApiOperation(value = "修改治疗方案", notes = "修改治疗方案(记得传入修改id)")
    public Envelop updatePlanning(@ApiParam(name = "jsonData", value = "json", defaultValue = "")
                                          @RequestParam(value = "jsonData", required = true)String jsonData) {
        try {
            RehabilitationPlanningVO planningVO = toEntity(jsonData, RehabilitationPlanningVO.class);
            RehabilitationPlanningDO planningDO = planningService.convertToModel(planningVO, RehabilitationPlanningDO.class);
            planningService.update(planningDO);
            return Envelop.getSuccess(RehabilitationRequestMapping.Common.message_success_update);
        } catch (Exception e) {
            e.printStackTrace();
            return Envelop.getError(e.getMessage());
        }
    }
    @PostMapping(value = RehabilitationRequestMapping.Planning.api_delete)
    @ApiOperation(value = "删除治疗方案", notes = "删除治疗方案")
    public Envelop delPlanning(@ApiParam(name = "id", value = "id")
                                       @RequestParam(value = "id", required = true) String id) {
        try {
            planningService.delete(id);
            return Envelop.getSuccess(RehabilitationRequestMapping.Common.message_success_delete);
        } catch (Exception e) {
            e.printStackTrace();
            return Envelop.getError(e.getMessage());
        }
    }
}

+ 13 - 0
svr/svr-rehabilitation/src/main/java/com/yihu/rehabilitation/dao/RehabilitationPlanningDao.java

@ -0,0 +1,13 @@
package com.yihu.rehabilitation.dao;
import com.yihu.jw.rehabilitation.RehabilitationPlanningDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
public interface RehabilitationPlanningDao extends PagingAndSortingRepository<RehabilitationPlanningDO, String>,
        JpaSpecificationExecutor<RehabilitationPlanningDO> {
    @Query("from RehabilitationPlanningDO w where w.id = ?1")
    RehabilitationPlanningDO findById(String id);
}

+ 78 - 0
svr/svr-rehabilitation/src/main/java/com/yihu/rehabilitation/service/RehabilitationPlanningService.java

@ -0,0 +1,78 @@
package com.yihu.rehabilitation.service;
import com.yihu.base.mysql.query.BaseJpaService;
import com.yihu.jw.rehabilitation.RehabilitationPlanningDO;
import com.yihu.jw.restmodel.common.Envelop;
import com.yihu.jw.restmodel.rehabilitation.RehabilitationPlanningVO;
import com.yihu.jw.rm.rehabilitation.RehabilitationRequestMapping;
import com.yihu.rehabilitation.dao.RehabilitationPlanningDao;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.List;
@Service
@Transactional(rollbackFor = Exception.class)
public class RehabilitationPlanningService extends BaseJpaService<RehabilitationPlanningDO, RehabilitationPlanningDao> {
    @Autowired
    private RehabilitationPlanningDao planningDao;
    /**
     * 分页查找健康档案
     * @param page
     * @param size
     * @param patientId
     * @return
     * @throws ParseException
     */
    public Envelop<RehabilitationPlanningVO> queryPlanningPage(Integer page, Integer size, String patientId, String programId) throws ParseException {
        String filters = "";
        String semicolon = "";
        if(StringUtils.isNotBlank(patientId)){
            filters = "patientId="+patientId+"";
            semicolon = ";";
        }
        if(StringUtils.isNotBlank(programId)){
            filters += semicolon + "programId="+programId+"";
            semicolon = ";";
        }
        String sorts = "-createTime";
        //得到list数据
        List<RehabilitationPlanningDO> list = search(null, filters, sorts, page, size);
        //获取总数
        long count = getCount(filters);
        //DO转VO
        List<RehabilitationPlanningVO> planningVOs = convertToModels(list,new ArrayList<>(list.size()), RehabilitationPlanningVO.class);
        return Envelop.getSuccessListWithPage(RehabilitationRequestMapping.Common.message_success_find_functions,planningVOs, page, size,count);
    }
    public RehabilitationPlanningDO create(RehabilitationPlanningDO PlanningDO) {
        PlanningDO.setSaasId(getCode());
        PlanningDO = planningDao.save(PlanningDO);
        return PlanningDO;
    }
    public RehabilitationPlanningDO findById(String id) {
        RehabilitationPlanningDO planningDO = planningDao.findById(id);
        return planningDO;
    }
    /**
     * 修改
     * @param planningDO
     */
    public void update(RehabilitationPlanningDO planningDO){
        RehabilitationPlanningDO oldPlanningDO = planningDao.findById(planningDO.getId());
        oldPlanningDO.setPatientId(planningDO.getPatientId());
        oldPlanningDO.setProgramId(planningDO.getProgramId());
        oldPlanningDO.setRecheckTime(planningDO.getRecheckTime());
        oldPlanningDO.setDescription(planningDO.getDescription());
        planningDao.save(oldPlanningDO);
    }
}