ソースを参照

分配健管师接口添加

lyr 8 年 前
コミット
3de3c66798

+ 7 - 1
src/main/java/com/yihu/wlyy/service/app/message/MessageService.java

@ -89,7 +89,13 @@ public class MessageService extends BaseService {
					Object[] msgArray = (Object[])msg;
					JSONObject msgJson = new JSONObject();
					msgJson.put("msg",msgArray[0].toString() + "向您发来一个咨询");
					msgJson.put("msgTime",msgArray[1] != null? DateUtil.dateToStr((Date) msgArray[1],DateUtil.YYYY_MM_DD):"");
					if(msgArray[1] != null) {
						if (DateUtil.dateToStr(new Date(), DateUtil.YYYY_MM_DD).equals(DateUtil.dateToStr((Date) msgArray[1], DateUtil.YYYY_MM_DD))) {
							msgJson.put("msgTime", DateUtil.dateToStr((Date) msgArray[1], DateUtil.HH_MM));
						}else{
							msgJson.put("msgTime", DateUtil.dateToStr((Date) msgArray[1], DateUtil.YYYY_MM_DD_HH_MM));
						}
					}
					consultJson.put("lastMessage",msgJson);
				}
			}

+ 96 - 86
src/main/java/com/yihu/wlyy/service/app/sign/FamilyContractService.java

@ -1657,7 +1657,7 @@ public class FamilyContractService extends BaseService {
     * @param healthDoctor 健康管理师code
     * @return
     */
    public JSONObject updateHealthDoctor(String patient,String healthDoctor){
    public JSONObject updateSignInfo(String patient,String healthDoctor,String expensesType){
        JSONObject result = new JSONObject();
        Doctor doctor = doctorDao.findByCode(healthDoctor);
        SignFamily signFamily = signFamilyDao.findByjiatingPatientYes(patient);
@ -1670,105 +1670,115 @@ public class FamilyContractService extends BaseService {
            result.put("status",-2);
            result.put("msg","医生不存在");
        }
        if(StringUtils.isNotEmpty(signFamily.getDoctorHealth())){
            // 取消原有健康管理师的家庭签约分组,并新增分组
            List<DoctorPatientGroupInfo> groups = doctorPatientGroupInfoDao.findGroupInfoByPatientAndDoctor(signFamily.getDoctorHealth(),patient);
            if(groups != null){
                List<DoctorPatientGroupInfo> newGroups = new ArrayList<>();
                for(DoctorPatientGroupInfo group : groups){
                    if(group.getGroup().equals("1") || group.getGroup().equals("2") || group.getGroup().equals("3")) {
                        DoctorPatientGroupInfo newGroup = new DoctorPatientGroupInfo();
                        newGroup.setDoctor(doctor.getCode());
                        newGroup.setCzrq(new Date());
                        newGroup.setGroup(group.getGroup());
                        newGroup.setPatient(patient);
                        newGroup.setSignType("2");
                        newGroup.setStatus(1);
                        newGroup.setPname(group.getPname());
                        newGroups.add(newGroup);
        if(StringUtils.isNotEmpty(healthDoctor)) {
            if (StringUtils.isNotEmpty(signFamily.getDoctorHealth())) {
                // 取消原有健康管理师的家庭签约分组,并新增分组
                List<DoctorPatientGroupInfo> groups = doctorPatientGroupInfoDao.findGroupInfoByPatientAndDoctor(signFamily.getDoctorHealth(), patient);
                if (groups != null) {
                    List<DoctorPatientGroupInfo> newGroups = new ArrayList<>();
                    for (DoctorPatientGroupInfo group : groups) {
                        if (group.getGroup().equals("1") || group.getGroup().equals("2") || group.getGroup().equals("3")) {
                            DoctorPatientGroupInfo newGroup = new DoctorPatientGroupInfo();
                            newGroup.setDoctor(doctor.getCode());
                            newGroup.setCzrq(new Date());
                            newGroup.setGroup(group.getGroup());
                            newGroup.setPatient(patient);
                            newGroup.setSignType("2");
                            newGroup.setStatus(1);
                            newGroup.setPname(group.getPname());
                            newGroups.add(newGroup);
                        }
                        group.setStatus(0);
                        group.setCzrq(new Date());
                    }
                    if (newGroups.size() > 0) {
                        doctorPatientGroupInfoDao.save(newGroups);
                    }
                    group.setStatus(0);
                    group.setCzrq(new Date());
                }
                if(newGroups.size() > 0){
                    doctorPatientGroupInfoDao.save(newGroups);
                }
                // 更新团队信息
                if(StringUtils.isNotEmpty(signFamily.getTeamCode())) {
                    DoctorTeamMember teamMember = doctorTeamDoctor.findMemberByTeamAndCode(signFamily.getTeamCode(), signFamily.getDoctorHealth());
                    // 更新团队信息
                    if (StringUtils.isNotEmpty(signFamily.getTeamCode())) {
                        DoctorTeamMember teamMember = doctorTeamDoctor.findMemberByTeamAndCode(signFamily.getTeamCode(), signFamily.getDoctorHealth());
                    if (teamMember != null) {
                        teamMember.setDel("0");
                        teamMember.setCzrq(new Date());
                    }
                        if (teamMember != null) {
                            teamMember.setDel("0");
                            teamMember.setCzrq(new Date());
                        }
                    DoctorTeamMember newTeamMember = new DoctorTeamMember();
                        DoctorTeamMember newTeamMember = new DoctorTeamMember();
                    newTeamMember.setCode(getCode());
                    newTeamMember.setMemberCode(doctor.getCode());
                    newTeamMember.setName(doctor.getName());
                    newTeamMember.setTeam(signFamily.getTeamCode());
                    newTeamMember.setDel("1");
                    newTeamMember.setSignType("2");
                    newTeamMember.setType(3);
                    newTeamMember.setCzrq(new Date());
                        newTeamMember.setCode(getCode());
                        newTeamMember.setMemberCode(doctor.getCode());
                        newTeamMember.setName(doctor.getName());
                        newTeamMember.setTeam(signFamily.getTeamCode());
                        newTeamMember.setDel("1");
                        newTeamMember.setSignType("2");
                        newTeamMember.setType(3);
                        newTeamMember.setCzrq(new Date());
                    doctorTeamDoctor.save(newTeamMember);
                }
            }
        }else{
            // 新增分组
            List<DoctorPatientGroupInfo> groups = doctorPatientGroupInfoDao.findGroupInfoByPatientAndDoctor(signFamily.getDoctor(),patient);
            if(groups != null){
                List<DoctorPatientGroupInfo> newGroups = new ArrayList<>();
                for(DoctorPatientGroupInfo group : groups){
                    if(group.getGroup().equals("1") || group.getGroup().equals("2") || group.getGroup().equals("3")) {
                        DoctorPatientGroupInfo newGroup = new DoctorPatientGroupInfo();
                        newGroup.setDoctor(doctor.getCode());
                        newGroup.setCzrq(new Date());
                        newGroup.setGroup(group.getGroup());
                        newGroup.setPatient(patient);
                        newGroup.setSignType("2");
                        newGroup.setStatus(1);
                        newGroup.setPname(group.getPname());
                        newGroups.add(newGroup);
                        doctorTeamDoctor.save(newTeamMember);
                    }
                }
                if(newGroups.size() > 0){
                    doctorPatientGroupInfoDao.save(newGroups);
                }
                // 新增团队信息
                if(StringUtils.isNotEmpty(signFamily.getTeamCode())) {
                    DoctorTeamMember newTeamMember = new DoctorTeamMember();
                    newTeamMember.setCode(getCode());
                    newTeamMember.setMemberCode(doctor.getCode());
                    newTeamMember.setName(doctor.getName());
                    newTeamMember.setTeam(signFamily.getTeamCode());
                    newTeamMember.setDel("1");
                    newTeamMember.setSignType("2");
                    newTeamMember.setType(3);
                    newTeamMember.setCzrq(new Date());
                    doctorTeamDoctor.save(newTeamMember);
            } else {
                // 新增分组
                List<DoctorPatientGroupInfo> groups = doctorPatientGroupInfoDao.findGroupInfoByPatientAndDoctor(signFamily.getDoctor(), patient);
                if (groups != null) {
                    List<DoctorPatientGroupInfo> newGroups = new ArrayList<>();
                    for (DoctorPatientGroupInfo group : groups) {
                        if (group.getGroup().equals("1") || group.getGroup().equals("2") || group.getGroup().equals("3")) {
                            DoctorPatientGroupInfo newGroup = new DoctorPatientGroupInfo();
                            newGroup.setDoctor(doctor.getCode());
                            newGroup.setCzrq(new Date());
                            newGroup.setGroup(group.getGroup());
                            newGroup.setPatient(patient);
                            newGroup.setSignType("2");
                            newGroup.setStatus(1);
                            newGroup.setPname(group.getPname());
                            newGroups.add(newGroup);
                        }
                    }
                    if (newGroups.size() > 0) {
                        doctorPatientGroupInfoDao.save(newGroups);
                    }
                    // 新增团队信息
                    if (StringUtils.isNotEmpty(signFamily.getTeamCode())) {
                        DoctorTeamMember newTeamMember = new DoctorTeamMember();
                        newTeamMember.setCode(getCode());
                        newTeamMember.setMemberCode(doctor.getCode());
                        newTeamMember.setName(doctor.getName());
                        newTeamMember.setTeam(signFamily.getTeamCode());
                        newTeamMember.setDel("1");
                        newTeamMember.setSignType("2");
                        newTeamMember.setType(3);
                        newTeamMember.setCzrq(new Date());
                        doctorTeamDoctor.save(newTeamMember);
                    }
                }
            }
            signFamily.setDoctorHealth(doctor.getCode());
            signFamily.setDoctorHealthName(doctor.getName());
            signFamily.setCzrq(new Date());
        }
        signFamily.setDoctorHealth(doctor.getCode());
        signFamily.setDoctorHealthName(doctor.getName());
        signFamily.setCzrq(new Date());
        if(StringUtils.isNotEmpty(expensesType)){
            if (StringUtils.isNotEmpty(signFamily.getMedicalInsuranceNum())) {
                result.put("status", -3);
                result.put("msg","数据已上传社保,不能修改补贴类型");
            }else{
                signFamily.setExpensesType(expensesType);
            }
        }
        result.put("status",1);
        result.put("msg","分配健管师成功");
        result.put("msg","更新成功");
        return result;
    }

+ 24 - 37
src/main/java/com/yihu/wlyy/web/doctor/sign/DoctorFamilyContractController.java

@ -293,7 +293,7 @@ public class DoctorFamilyContractController extends WeixinBaseController {
                        }
                    }
                }
            }catch (Exception e){
            } catch (Exception e) {
                e.printStackTrace();
            }
@ -396,7 +396,7 @@ public class DoctorFamilyContractController extends WeixinBaseController {
                    // 消息内容
                    json.put("message", msg.getContent());
                    // 签约code
                    json.put("signCode", StringUtils.isEmpty(msg.getData())?"":msg.getData());
                    json.put("signCode", StringUtils.isEmpty(msg.getData()) ? "" : msg.getData());
                    // 消息类型
                    json.put("type", msg.getType());
                    // 发送人标识
@ -500,7 +500,7 @@ public class DoctorFamilyContractController extends WeixinBaseController {
                        }
                    }
                }
            }catch (Exception e){
            } catch (Exception e) {
                e.printStackTrace();
            }
@ -663,68 +663,55 @@ public class DoctorFamilyContractController extends WeixinBaseController {
     */
    @RequestMapping(value = "/family_sign")
    @ResponseBody
    public String getSignFamily(String code){
        try{
            if(StringUtils.isEmpty(code)){
                return error(-1,"参数不能为空");
    public String getSignFamily(String code) {
        try {
            if (StringUtils.isEmpty(code)) {
                return error(-1, "参数不能为空");
            }
            SignFamily signFamily = familyContractService.findSignFamilyByCode(code);
            if(signFamily == null){
                return error(-1,"签约数据不存在");
            if (signFamily == null) {
                return error(-1, "签约数据不存在");
            }
            return write(200,"查询成功","data",new JSONObject(signFamily));
        }catch (Exception e){
            return write(200, "查询成功", "data", new JSONObject(signFamily));
        } catch (Exception e) {
            e.printStackTrace();
            return error(-1,"查询失败");
            return error(-1, "查询失败");
        }
    }
    /**
     * 签约信息变更
     *
     * @param patient 患者code
     * @param patient      患者code
     * @param healthDoctor 健康管理师code
     * @param expensesType 补贴类型
     * @return
     */
    @RequestMapping(value = "/sign_info_update")
    @ResponseBody
    public String setHealthDoctor(String patient,@RequestParam(required = false) String healthDoctor
            ,@RequestParam(required = false)String expensesType){
        try{
    public String setHealthDoctor(String patient, @RequestParam(required = false) String healthDoctor
            , @RequestParam(required = false) String expensesType) {
        try {
            if (StringUtils.isEmpty(patient)) {
                return error(-1, "患者不能为空");
            }
            if(StringUtils.isNotEmpty(healthDoctor)) {
                JSONObject result = familyContractService.updateHealthDoctor(patient, healthDoctor);
                if (result.getInt("status") != 1) {
                    return error(-1, result.getString("msg"));
                }
            if (StringUtils.isEmpty(healthDoctor) && StringUtils.isEmpty(expensesType)) {
                return error(-1, "参数healthDoctor和expensesType不能同时为空");
            }
            if(StringUtils.isNotEmpty(expensesType)){
                SignFamily familySign = familyContractService.findByPatient(patient);
                if (familySign == null) {
                    return error(-1, "居民不存在家庭签约");
                } else {
                    if (StringUtils.isNotEmpty(familySign.getMedicalInsuranceNum())) {
                        return error(-1, "数据已上传社保,不能修改补贴类型");
                    }
                }
            JSONObject result = familyContractService.updateSignInfo(patient, healthDoctor, expensesType);
                if (!familyContractService.updateExpensesType(expensesType, patient)) {
                    return error(-1, "更新失败");
                }
            if (result.getInt("status") != 1) {
                return error(-1, result.getString("msg"));
            }
            return write(200,"更新成功");
        }catch (Exception e){
            return write(200, "更新成功");
        } catch (Exception e) {
            e.printStackTrace();
            return error(-1,"更新失败");
            return error(-1, "更新失败");
        }
    }
}