Procházet zdrojové kódy

康复服务套餐接口

humingfen před 7 roky
rodič
revize
f20bc8f036

+ 142 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/specialist/RehabilitationPlanService.java

@ -0,0 +1,142 @@
package com.yihu.wlyy.service.specialist;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.patient.SignFamily;
import com.yihu.wlyy.service.BaseService;
import com.yihu.wlyy.util.http.HttpResponse;
import com.yihu.wlyy.util.http.HttpUtils;
import org.apache.commons.collections.map.HashedMap;
import org.json.JSONArray;
import org.json.JSONObject;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
/**
 * Created by Trick on 2018/8/22.
 */
@Service
@Transactional
public class RehabilitationPlanService extends BaseService {
    @Value("${specialist.url}")
    private String specialistUrl;
    public JSONObject findTemplateInfo(Long teamId) {
        Map<String, Object> param = new HashedMap();
        param.put("adminTeamCode", teamId);
        HttpResponse response = null;
        try {
            response = HttpUtils.doGet(specialistUrl + "svr-specialist/findRehabilitationPlanTemplate", param);
        } catch (Exception e) {
            e.printStackTrace();
        }
        JSONObject rs = new JSONObject(response.getContent());
        return rs;
    }
    public JSONObject findTemplateDetailInfo(String templateId) {
        Map<String, Object> param = new HashedMap();
        param.put("templateId", templateId);
        HttpResponse response = null;
        try {
            response = HttpUtils.doGet(specialistUrl + "svr-specialist/findTemplateDetailByTemplateId", param);
        } catch (Exception e) {
            e.printStackTrace();
        }
        JSONObject rs = new JSONObject(response.getContent());
        return rs;
    }
    public String createTemplate(String title, Doctor doctor, Long teamId) {
        JSONObject json = new JSONObject();
        json.put("title", title);
        json.put("adminTeamCode", teamId);
        json.put("hospital", doctor.getHospital());
        json.put("hospitalName", doctor.getHospitalName());
        json.put("createUser", doctor.getCode());
        json.put("createUserName", doctor.getName());
        Map<String, Object> param = new HashedMap();
        param.put("rehabilitationTemplate", json.toString());
        HttpResponse response = null;
        try {
            response = HttpUtils.doPost(specialistUrl + "svr-specialist/createRehabilitationPlanTemplate", param);
        } catch (Exception e) {
            e.printStackTrace();
        }
        JSONObject rs = new JSONObject(response.getContent());
        if ("success".equals(rs.getString("message"))) {
            return rs.getString("obj");
        }
        return rs.getString("message");
    }
    public String createTemplateDetail(String json, String type, Doctor doctor) {
        JSONObject object = new JSONObject(json);
        JSONArray details = new JSONArray();
        String templateId = object.get("templateId").toString();
        String serviceItemIds = object.get("hospitalServiceItemIds").toString();
        if(serviceItemIds.contains(",")) {
            String [] itemIds = serviceItemIds.split(",");
            int len = itemIds.length;
            while (len > 0){
                len --;
                JSONObject j = new JSONObject();
                j.put("templateId", templateId);
                j.put("hospitalServiceItemId", itemIds[len]);
                j.put("createUser", doctor.getCode());
                j.put("createUserName", doctor.getName());
                details.put(len, j);
            }
        }
        Map<String, Object> param = new HashedMap();
        param.put("rehabilitationTemplateDetail", details.toString());
        HttpResponse response = null;
        try {
            if(type.equals("create")) {
                response = HttpUtils.doPost(specialistUrl + "svr-specialist/createRehabilitationTemplateDetail", param);
            }else if(type.equals("edit")) {
                response = HttpUtils.doPost(specialistUrl + "svr-specialist/updateRehabilitationTemplateDetail", param);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        JSONObject rs = new JSONObject(response.getContent());
        return rs.getString("message");
    }
    public JSONObject findServiceItemsByHospital(SignFamily signFamily, Doctor doctor) {
        List<String> hospitals = null;
        hospitals.add(doctor.getHospital());
        hospitals.add(signFamily.getHospital());
        Map<String, Object> param = new HashedMap();
        param.put("hospitals", hospitals);
        HttpResponse response = null;
        try {
            response = HttpUtils.doPost(specialistUrl + "svr-specialist/", param);
        } catch (Exception e) {
            e.printStackTrace();
        }
        JSONObject rs = new JSONObject(response.getContent());
        return rs;
    }
    public String createRehabilitationPlan(String json, Doctor doctor) {
        JSONObject object = new JSONObject(json);
        object.put("createUser", doctor.getCode());
        object.put("createUserName", doctor.getName());
        Map<String, Object> param = new HashedMap();
        param.put("rehabilitationPlan", json.toString());
        HttpResponse response = null;
        try {
            response = HttpUtils.doPost(specialistUrl + "svr-specialist/createPatientRehabilitationPlan", param);
        } catch (Exception e) {
            e.printStackTrace();
        }
        JSONObject rs = new JSONObject(response.getContent());
        return rs.getString("message");
    }
}

+ 134 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/specialist/ThirdRehabilitationPlanController.java

@ -0,0 +1,134 @@
package com.yihu.wlyy.web.third.specialist;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.doctor.team.admin.AdminTeam;
import com.yihu.wlyy.entity.patient.SignFamily;
import com.yihu.wlyy.service.app.family.FamilyService;
import com.yihu.wlyy.service.app.team.AdminTeamService;
import com.yihu.wlyy.service.common.account.DoctorService;
import com.yihu.wlyy.service.specialist.RehabilitationPlanService;
import com.yihu.wlyy.web.BaseController;
import io.swagger.annotations.Api;
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.http.MediaType;
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.RestController;
/**
 * Created by humingfen on 2018/8/22.
 */
@RestController
@RequestMapping(value = "/third/rehabilitaionPlan",produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
@Api(description = "康复服务套餐管理")
public class ThirdRehabilitationPlanController extends BaseController {
    @Autowired
    private RehabilitationPlanService rehabilitationPlanService;
    @Autowired
    private AdminTeamService teamService;
    @Autowired
    private DoctorService doctorService;
    @Autowired
    private FamilyService familyService;
    @RequestMapping(value = "/findTemplateList", method = RequestMethod.GET)
    @ApiOperation(value = "获取康复服务套餐模板列表")
    public String templateList(@ApiParam(name = "patient", value = "居民标识")
                                   @RequestParam(required = false)String patient){
        try {
            Long adminTeamId = null;
            if(StringUtils.isNotBlank(patient)) {
                SignFamily signFamily = familyService.findByPatientAndDoctor(patient, getUID());
                adminTeamId = signFamily.getAdminTeamId();
            }else {
                AdminTeam team = teamService.findByLeaderCode(getUID());
                adminTeamId = team.getId();
            }
            return write(200, "获取成功", "data", rehabilitationPlanService.findTemplateInfo(adminTeamId));
//            return write(200, "获取成功", "data", rehabilitationPlanService.findTemplateInfo((long) 646));
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
    }
    @RequestMapping(value = "/findTemplateDetail", method = RequestMethod.GET)
    @ApiOperation(value = "获取康复服务套餐模板明细")
    public String findTemplateDetail(@ApiParam(name = "templateId", value = "模板id")
                                         @RequestParam(required = true)String templateId){
        try {
            return write(200, "获取成功", "data", rehabilitationPlanService.findTemplateDetailInfo(templateId));
//            return write(200, "获取成功", "data", rehabilitationPlanService.findTemplateInfo((long) 646));
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
    }
    @RequestMapping(value = "/createTemplate", method = RequestMethod.POST)
    @ApiOperation(value = "创建康复服务套餐模板")
    public String createTemplate(@ApiParam(name = "title", value = "康复服务模板名称")
                                 @RequestParam(required = true) String title){
        try {
            AdminTeam team = teamService.findByLeaderCode(getUID());
            Doctor doctor = doctorService.findDoctorByCode(getUID());
            return write(200, "获取成功", "data", rehabilitationPlanService.createTemplate(title,doctor,team.getId()));
//            Doctor doctor = doctorService.findDoctorByCode("0272469a6dcf11e69f7c005056850d66");
//            return write(200, "获取成功", "data", rehabilitationPlanService.createTemplate(title,doctor,(long) 646));
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
    }
    @RequestMapping(value = "/createTemplateDetail", method = RequestMethod.POST)
    @ApiOperation(value = "创建康复服务套餐模板明细")
    public String createTemplateDetail(@ApiParam(name = "json", value = "康复服务模板明细")
                                 @RequestParam(required = true) String json,
                                       @ApiParam(name = "type", value = "create或者edit")
                                       @RequestParam(required = true) String type){
        try {
//            Doctor doctor = doctorService.findDoctorByCode(getUID());
//            return write(200, "获取成功", "data", rehabilitationPlanService.createTemplate(title,doctor,team.getId()));
            Doctor doctor = doctorService.findDoctorByCode("0272469a6dcf11e69f7c005056850d66");
            return write(200, "获取成功", "data", rehabilitationPlanService.createTemplateDetail(json,type,doctor));
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
    }
    @RequestMapping(value = "/findServiceItemsByHospital", method = RequestMethod.GET)
    @ApiOperation(value = "根据机构查找服务项目列表")
    public String findServiceItemsByHospital(@ApiParam(name = "patient", value = "居民标识")
                                                 @RequestParam(required = true)String patient){
        try {
//            Doctor doctor = doctorService.findDoctorByCode(getUID());
            SignFamily signFamily = familyService.findByPatientAndDoctor(patient, getUID());
            Doctor doctor = doctorService.findDoctorByCode("0272469a6dcf11e69f7c005056850d66");
            return write(200, "获取成功", "data", rehabilitationPlanService.findServiceItemsByHospital(signFamily,doctor));
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
    }
    @RequestMapping(value = "/createRehabilitationPlan", method = RequestMethod.POST)
    @ApiOperation(value = "创建居民康复计划")
    public String createRehabilitationPlan(@ApiParam(name = "json", value = "康复计划json")
                                 @RequestParam(required = true) String json){
        try {
//            Doctor doctor = doctorService.findDoctorByCode(getUID());
            Doctor doctor = doctorService.findDoctorByCode("0272469a6dcf11e69f7c005056850d66");
            return write(200, "获取成功", "data", rehabilitationPlanService.createRehabilitationPlan(json,doctor));
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
    }
}