Browse Source

Merge branch 'dev' of http://192.168.1.220:10080/Amoy/patient-co-management into dev

esb 8 years ago
parent
commit
16886d7fb6

+ 59 - 59
patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/PatientInterceptor.java

@ -25,65 +25,65 @@ public class PatientInterceptor extends BaseInterceptor {
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
		boolean flag = true;
		try {
			if(request.getRequestURI().contains("/patient/hosptail/getHositalByTownCode")){
				return true;
			}
			response.setCharacterEncoding("UTF-8");
			JSONObject json = getAgent(request);
			if (json == null) {
				// 未登录
				response.getOutputStream().write(error(SystemConf.NOT_LOGIN, "请登录后再操作!").getBytes());
				return false;
			}
			String tokenStr = json.has("token") ? json.getString("token") : "";
			String user = json.has("uid") ? json.getString("uid") : "";
			String imei = json.has("imei") ? json.getString("imei") : "";
			String openid = json.has("openid") ? json.getString("openid") : "";
			int platform = json.has("platform") ? json.getInt("platform") : 1;
			if (StringUtils.isEmpty(imei)) {
				imei = openid;
			}
			Token token = null;
			if (platform == 1) {
				token = SystemData.patientTokens.get(user);
			} else if (platform == 3) {
				token = SystemData.wxPatientTokens.get(user);
			}
			if (token == null) {
				token = tokenDao.findByPatient(user, platform);
				// 加入缓存
				if (platform == 1) {
					SystemData.patientTokens.put(user, token);
				} else if (platform == 3) {
					SystemData.wxPatientTokens.put(user, token);
				}
			}
			if (token == null || StringUtils.isEmpty(tokenStr) || (token.getPlatform() != 1 && token.getPlatform() != 3)) {
				// 未登录
				response.getOutputStream().write(error(SystemConf.NOT_LOGIN, "请登录后再操作!").getBytes());
				flag = false;
			} else {
				if (!StringUtils.equals(tokenStr, token.getToken()) || !StringUtils.equals(user, token.getUser()) || !StringUtils.equals(imei, token.getImei())) {
					// 别处登录
					response.getOutputStream().write(error(SystemConf.LOGIN_OTHER, "帐号在别处登录,请重新登录").getBytes());
					flag = false;
				} else {
					// 一天只更新一次
					if (DateUtil.getDays(token.getCzrq(), DateUtil.getNowDateShort()) != 0) {
						// 今天未更新,则更新缓存
						token.setCzrq(new Date());
						// 更新内存
						if (platform == 1) {
							SystemData.patientTokens.put(user, token);
						} else if (platform == 3) {
							SystemData.wxPatientTokens.put(user, token);
						}
						// 更新数据库
						tokenDao.save(token);
					}
				}
			}
//			if(request.getRequestURI().contains("/patient/hosptail/getHositalByTownCode")){
//				return true;
//			}
//			response.setCharacterEncoding("UTF-8");
//			JSONObject json = getAgent(request);
//			if (json == null) {
//				// 未登录
//				response.getOutputStream().write(error(SystemConf.NOT_LOGIN, "请登录后再操作!").getBytes());
//				return false;
//			}
//			String tokenStr = json.has("token") ? json.getString("token") : "";
//			String user = json.has("uid") ? json.getString("uid") : "";
//			String imei = json.has("imei") ? json.getString("imei") : "";
//			String openid = json.has("openid") ? json.getString("openid") : "";
//			int platform = json.has("platform") ? json.getInt("platform") : 1;
//			if (StringUtils.isEmpty(imei)) {
//				imei = openid;
//			}
//
//			Token token = null;
//			if (platform == 1) {
//				token = SystemData.patientTokens.get(user);
//			} else if (platform == 3) {
//				token = SystemData.wxPatientTokens.get(user);
//			}
//			if (token == null) {
//				token = tokenDao.findByPatient(user, platform);
//				// 加入缓存
//				if (platform == 1) {
//					SystemData.patientTokens.put(user, token);
//				} else if (platform == 3) {
//					SystemData.wxPatientTokens.put(user, token);
//				}
//			}
//			if (token == null || StringUtils.isEmpty(tokenStr) || (token.getPlatform() != 1 && token.getPlatform() != 3)) {
//				// 未登录
//				response.getOutputStream().write(error(SystemConf.NOT_LOGIN, "请登录后再操作!").getBytes());
//				flag = false;
//			} else {
//				if (!StringUtils.equals(tokenStr, token.getToken()) || !StringUtils.equals(user, token.getUser()) || !StringUtils.equals(imei, token.getImei())) {
//					// 别处登录
//					response.getOutputStream().write(error(SystemConf.LOGIN_OTHER, "帐号在别处登录,请重新登录").getBytes());
//					flag = false;
//				} else {
//					// 一天只更新一次
//					if (DateUtil.getDays(token.getCzrq(), DateUtil.getNowDateShort()) != 0) {
//						// 今天未更新,则更新缓存
//						token.setCzrq(new Date());
//						// 更新内存
//						if (platform == 1) {
//							SystemData.patientTokens.put(user, token);
//						} else if (platform == 3) {
//							SystemData.wxPatientTokens.put(user, token);
//						}
//						// 更新数据库
//						tokenDao.save(token);
//					}
//				}
//			}
		} catch (Exception e) {
			e.printStackTrace();
		}

+ 7 - 5
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/family/FamilyMemberService.java

@ -60,7 +60,7 @@ public class FamilyMemberService extends BaseService {
            return -2;
        }
        // 验证码验证
        if (StringUtils.isNotEmpty(captcha) && smsService.check(m.getMobile(), 9, captcha) != 1) {
        if (StringUtils.isNotEmpty(captcha) && smsService.check(m.getMobile(), 10, captcha) != 1) {
            return -3;
        }
        if (StringUtils.isNotEmpty(password)) {
@ -87,8 +87,8 @@ public class FamilyMemberService extends BaseService {
        // 不存在则创建
        if (fmt == null) {
            fmt = new PatientFamilyMember();
            fmt.setPatient(patient);
            fmt.setFamilyMember(member);
            fmt.setPatient(member);
            fmt.setFamilyMember(patient);
        }
        // 对方与自己的关系转换
@ -209,11 +209,11 @@ public class FamilyMemberService extends BaseService {
        String sql = "select * " +
                " from " +
                "    wlyy_patient_family_member t1, " +
                "    patient t2 " +
                "    wlyy_patient t2 " +
                " where " +
                "    t2.code in (select family_member from wlyy_patient_family_member where patient = ? ) " +
                "    and t1.patient = ? " +
                "    and t1.patient = t2.code ";
                "    and t1.family_member = t2.code ";
        List<Map<String, Object>> result = jdbcTemplate.queryForList(sql, new Object[]{patient, patient});
@ -234,6 +234,8 @@ public class FamilyMemberService extends BaseService {
                obj.put("code", map.get("code"));
                obj.put("name", map.get("name"));
                obj.put("sex", map.get("sex"));
                obj.put("birthday", map.get("birthday"));
                obj.put("idcard", map.get("idcard"));
                obj.put("photo", map.get("photo"));
                obj.put("mobile", map.get("mobile"));

+ 144 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/record/InspectionService.java

@ -0,0 +1,144 @@
package com.yihu.wlyy.service.app.record;
import com.yihu.wlyy.service.BaseService;
import com.yihu.wlyy.util.HttpClientUtil;
import com.yihu.wlyy.util.SystemConf;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONArray;
import org.json.JSONObject;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.List;
/**
 * @author HZY
 * @vsrsion 1.0
 * Created at 2016/10/17.
 */
@Service
public class InspectionService extends BaseService {
    /**
     * 获取检查报告信息
     */
    public JSONArray getChecking(String strSSID, String startDate, String endDate, String startNum, String endNum) throws Exception {
        String url = SystemConf.getInstance().getSystemProperties().getProperty("sign_check_upload");
        url = url + "/third/smjk/ExamReport";
        List<NameValuePair> params = new ArrayList<>();
        params.add(new BasicNameValuePair("strSSID", strSSID));
        params.add(new BasicNameValuePair("startDate", startDate));
        params.add(new BasicNameValuePair("endDate", endDate));
        params.add(new BasicNameValuePair("startNum", startNum));
        params.add(new BasicNameValuePair("endNum", endNum));
        JSONArray result = new JSONArray();
        String response = HttpClientUtil.post(url, params, "UTF-8");
        if (!StringUtils.isEmpty(response)){
            JSONObject jsonObject = new JSONObject(response);
            int status = jsonObject.getInt("status");
            if (status == 200){
                String data = jsonObject.getString("data");
                if (!StringUtils.isEmpty(data)){
                    JSONObject jsonData = new JSONObject(data);
                    result = jsonData.getJSONArray("EhrList");
                }
            }
        }
        return result;
    }
    /**
     * 获取检验报告信息
     */
    public JSONArray getInspection(String strSSID, String startDate, String endDate, String startNum, String endNum) throws Exception {
        String url = SystemConf.getInstance().getSystemProperties().getProperty("sign_check_upload");
        url = url + "/third/smjk/LabReport";
        List<NameValuePair> params = new ArrayList<>();
        params.add(new BasicNameValuePair("strSSID", strSSID));
        params.add(new BasicNameValuePair("startDate", startDate));
        params.add(new BasicNameValuePair("endDate", endDate));
        params.add(new BasicNameValuePair("startNum", startNum));
        params.add(new BasicNameValuePair("endNum", endNum));
        JSONArray result = new JSONArray();
        String response = HttpClientUtil.post(url, params, "UTF-8");
        if (!StringUtils.isEmpty(response)){
            JSONObject jsonObject = new JSONObject(response);
            int status = jsonObject.getInt("status");
            if (status == 200){
                String data = jsonObject.getString("data");
                if (!StringUtils.isEmpty(data)){
                    JSONObject jsonData = new JSONObject(data);
                    result = jsonData.getJSONArray("EhrList");
                }
            }
        }
        return result;
    }
    /**
     * 获取检查检验 信息
     * @param strSSID
     * @param startDate
     * @param endDate
     * @param startNum
     * @param endNum
     * @return
     * @throws Exception
     */
    public JSONArray getInspectionAndChecking(String strSSID, String startDate, String endDate, String startNum, String endNum) throws Exception {
        JSONArray total = new JSONArray();
        JSONArray check = getChecking(strSSID, startDate, endDate, startNum, endNum);
        JSONArray inspect = getInspection(strSSID, startDate, endDate, startNum, endNum);
        //TODO 检查检验数据合并
        return  total;
    }
    /**
     * 档案详情
     * @param strSSID       健康卡号
     * @param strEvent      事件ID
     * @param strCatalog    档案类型
     * @param strSerial     该类别顺序号,默认填1
     * @return
     * @throws Exception
     */
    public JSONArray getHealthData(String strSSID, String strEvent, String strCatalog, String strSerial) throws Exception {
        String url = SystemConf.getInstance().getSystemProperties().getProperty("sign_check_upload");
        url = url + "/third/smjk/HealthData";
        List<NameValuePair> params = new ArrayList<>();
        params.add(new BasicNameValuePair("strSSID", strSSID));
        params.add(new BasicNameValuePair("strEvent", strEvent));
        params.add(new BasicNameValuePair("strCatalog", strCatalog));
        params.add(new BasicNameValuePair("strSerial", strSerial));
        JSONArray result = new JSONArray();
        String response = HttpClientUtil.post(url, params, "UTF-8");
        if (!StringUtils.isEmpty(response)){
            JSONObject jsonObject = new JSONObject(response);
            int status = jsonObject.getInt("status");
            if (status == 200){
                String data = jsonObject.getString("data");
                if (!StringUtils.isEmpty(data)){
                    JSONObject jsonData = new JSONObject(data);
                    result = jsonData.getJSONArray("EhrList");
                }
            }
        }
        return result;
    }
}

+ 1 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/account/DoctorController.java

@ -1474,7 +1474,7 @@ public class DoctorController extends BaseController {
            if (StringUtils.isEmpty(captcha)) {
                return error(-1, "请输入验证码");
            }
            if (type != 1 || type != 2) {
            if (type != 1 && type != 2) {
                return error(-1, "操作类型参数错误");
            }

+ 28 - 5
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/record/InspectionController.java

@ -1,13 +1,17 @@
package com.yihu.wlyy.web.doctor.record;
import com.yihu.wlyy.service.app.record.InspectionService;
import com.yihu.wlyy.web.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.json.JSONArray;
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;
/**
@ -21,16 +25,26 @@ import org.springframework.web.bind.annotation.ResponseBody;
@Api(description = "医生端- 居民检查/检验记录")
public class InspectionController extends BaseController {
    @Autowired
    private InspectionService inspectionService;
    @RequestMapping(value = "/list", method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation(value = "获取检查/检验列表", produces = "application/json", notes = "获取检查/检验列表")
    public String inspectionList() {
    public String inspectionList(
            @ApiParam(name = "strSSID", value = "健康卡号")
            @RequestParam(value = "strSSID") String strSSID,
            @ApiParam(name = "startDate", value = "查询的开始日期")
            @RequestParam(value = "startDate") String startDate,
            @ApiParam(name = "endDate", value = "查询的结束日期")
            @RequestParam(value = "endDate") String endDate,
            @ApiParam(name = "startNum", value = "需要获取的起始行数")
            @RequestParam(value = "startNum") String startNum,
            @ApiParam(name = "endNum", value = "需要获取的结束的行数")
            @RequestParam(value = "endNum") String endNum) {
        try {
            JSONArray array = new JSONArray();
            //TODO 检查/检验报告接口
            JSONArray array = inspectionService.getInspectionAndChecking(strSSID,startDate,endDate,startNum,endNum);
            return write(200, "获取检查/检验记录成功!", "data", array);
        } catch (Exception e) {
            error(e);
@ -41,7 +55,16 @@ public class InspectionController extends BaseController {
    @RequestMapping(value = "/detail", method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation(value = "获取检查/检验详情", produces = "application/json", notes = "获取检查/检验详情")
    public String inspectionDetail() {
    public String inspectionDetail(
            @ApiParam(name = "strSSID", value = "健康卡号")
            @RequestParam(value = "strSSID") String strSSID,
            @ApiParam(name = "strEvent", value = "事件ID")
            @RequestParam(value = "strEvent") String strEvent,
            @ApiParam(name = "strCatalog", value = "档案类型")
            @RequestParam(value = "strCatalog") String strCatalog,
            @ApiParam(name = "strSerial", value = "该类别顺序号,默认填1")
            @RequestParam(value = "strSerial") String strSerial
    ) {
        try {
            JSONArray array = new JSONArray();
            //TODO 调用检查/检验报告接口

+ 1 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/account/PatientController.java

@ -659,7 +659,7 @@ public class PatientController extends WeixinBaseController {
            if (StringUtils.isEmpty(captcha)) {
                return error(-1, "请输入验证码");
            }
            if (type != 1 || type != 2) {
            if (type != 1 && type != 2) {
                return error(-1, "操作类型参数错误");
            }

+ 7 - 7
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/family/FamilyMemberController.java

@ -35,7 +35,7 @@ public class FamilyMemberController extends BaseController {
     * @param relation 关系
     * @return
     */
    @RequestMapping(value = "/member_add", method = RequestMethod.POST)
    @RequestMapping(value = "/member_add")
    @ApiOperation(value = "添加成员")
    public String addFamilyMember(String member, @RequestParam(required = false) String captcha,
                                  @RequestParam(required = false) String password, int relation) {
@ -50,7 +50,7 @@ public class FamilyMemberController extends BaseController {
                return error(-1, "家庭关系无效");
            }
            int result = familyMemberService.addMember(getUID(), member, captcha, password, relation);
            int result = familyMemberService.addMember("940976bd50404d2fb9aef98057d85361", member, captcha, password, relation);
            if (result == -1) {
                return error(-1, "居民信息查询失败");
@ -76,7 +76,7 @@ public class FamilyMemberController extends BaseController {
     * @param relation 家庭关系
     * @return
     */
    @RequestMapping(value = "/relation_update", method = RequestMethod.POST)
    @RequestMapping(value = "/relation_update")
    @ApiOperation(value = "家庭成员关系修改")
    public String modifyFamilyRelation(String member, int relation) {
        try {
@ -87,7 +87,7 @@ public class FamilyMemberController extends BaseController {
                return error(-1, "家庭关系无效");
            }
            int result = familyMemberService.modifyFamilyRelation(getUID(), member, relation);
            int result = familyMemberService.modifyFamilyRelation("940976bd50404d2fb9aef98057d85361", member, relation);
            if (result == -1) {
                return error(-1, "居民信息查询失败");
@ -110,7 +110,7 @@ public class FamilyMemberController extends BaseController {
     * @param member
     * @return
     */
    @RequestMapping(value = "/member_delete", method = RequestMethod.POST)
    @RequestMapping(value = "/member_delete")
    @ApiOperation(value = "家庭成员删除")
    public String deleteMember(String member) {
        try {
@ -118,7 +118,7 @@ public class FamilyMemberController extends BaseController {
                return error(-1, "成员不能为空");
            }
            int result = familyMemberService.deleteMember(getUID(), member);
            int result = familyMemberService.deleteMember("940976bd50404d2fb9aef98057d85361", member);
            if (result == -1) {
                return error(-1, "与该成员的关系不存在");
@ -140,7 +140,7 @@ public class FamilyMemberController extends BaseController {
    @ApiOperation(value = "家庭成员查询")
    public String getPatientFamilyMembers() {
        try {
            JSONArray result = familyMemberService.getPatientFamilyMembers(getUID());
            JSONArray result = familyMemberService.getPatientFamilyMembers("940976bd50404d2fb9aef98057d85361");
            return write(200, "查询成功", "data", result);
        } catch (Exception e) {