Browse Source

设备绑定

zd_123 7 years ago
parent
commit
6878828cb5

+ 253 - 0
common/common-entity/src/main/java/com/yihu/wlyy/entity/device/DeviceDetail.java

@ -0,0 +1,253 @@
package com.yihu.wlyy.entity.device;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
/**
 * Created by zd on 2018/01/10.
 */
@Entity
@Table(name = "wlyy_devices")
public class DeviceDetail extends IdEntity{
    private String deviceName;
    private String deviceModel;
    private String deviceCode;
    private String manufacturer;
    private String applyDate;;
    private String orgName;
    private String linkman;
    private String tel;
    private String serverIp;
    private String manufacturerCode;
    private String address;
    private String representative;
    private String applicantName;
    private String applicantIdentity;
    private String applicantTel;
    private String applicantMail;
    private Integer isGrant;
    private String grantAdminTeam;
    private String grantHospital;
    private String bindingCount;
    private Date grantTime;
    /** default constructor */
    public DeviceDetail() {
    }
    /** full constructor */
    public DeviceDetail(String deviceName, String deviceModel, String deviceCode, String manufacturer, String applyDate
            , String orgName, String linkman, String tel, String serverIp, String manufacturerCode, String address
            , String representative, String applicantName, String applicantIdentity, String applicantTel, String applicantMail) {
        this.deviceName = deviceName;
        this.deviceModel = deviceModel;
        this.deviceCode = deviceCode;
        this.manufacturer = manufacturer;
        this.applyDate = applyDate;
        this.orgName = orgName;
        this.linkman = linkman;
        this.tel = tel;
        this.serverIp = serverIp;
        this.manufacturerCode = manufacturerCode;
        this.address = address;
        this.representative = representative;
        this.applicantName = applicantName;
        this.applicantIdentity = applicantIdentity;
        this.applicantTel = applicantTel;
        this.applicantMail = applicantMail;
    }
    @Column(name = "device_name")
    public String getDeviceName() {
        return deviceName;
    }
    public void setDeviceName(String deviceName) {
        this.deviceName = deviceName;
    }
    @Column(name = "device_model")
    public String getDeviceModel() {
        return deviceModel;
    }
    public void setDeviceModel(String deviceModel) {
        this.deviceModel = deviceModel;
    }
    @Column(name = "device_code")
    public String getDeviceCode() {
        return deviceCode;
    }
    public void setDeviceCode(String deviceCode) {
        this.deviceCode = deviceCode;
    }
    @Column(name = "manufacturer")
    public String getManufacturer() {
        return manufacturer;
    }
    public void setManufacturer(String manufacturer) {
        this.manufacturer = manufacturer;
    }
    @Column(name = "apply_date")
    public String getApplyDate() {
        return applyDate;
    }
    public void setApplyDate(String applyDate) {
        this.applyDate = applyDate;
    }
    @Column(name = "org_name")
    public String getOrgName() {
        return orgName;
    }
    public void setOrgName(String orgName) {
        this.orgName = orgName;
    }
    @Column(name = "linkman")
    public String getLinkman() {
        return linkman;
    }
    public void setLinkman(String linkman) {
        this.linkman = linkman;
    }
    @Column(name = "tel")
    public String getTel() {
        return tel;
    }
    public void setTel(String tel) {
        this.tel = tel;
    }
    @Column(name = "server_ip")
    public String getServerIp() {
        return serverIp;
    }
    public void setServerIp(String serverIp) {
        this.serverIp = serverIp;
    }
    @Column(name = "manufacturerCode")
    public String getManufacturerCode() {
        return manufacturerCode;
    }
    public void setManufacturerCode(String manufacturerCode) {
        this.manufacturerCode = manufacturerCode;
    }
    @Column(name = "address")
    public String getAddress() {
        return address;
    }
    public void setAddress(String address) {
        this.address = address;
    }
    @Column(name = "representative")
    public String getRepresentative() {
        return representative;
    }
    public void setRepresentative(String representative) {
        this.representative = representative;
    }
    @Column(name = "applicant_name")
    public String getApplicantName() {
        return applicantName;
    }
    public void setApplicantName(String applicantName) {
        this.applicantName = applicantName;
    }
    @Column(name = "applicant_identity")
    public String getApplicantIdentity() {
        return applicantIdentity;
    }
    public void setApplicantIdentity(String applicantIdentity) {
        this.applicantIdentity = applicantIdentity;
    }
    @Column(name = "applicant_tel")
    public String getApplicantTel() {
        return applicantTel;
    }
    public void setApplicantTel(String applicantTel) {
        this.applicantTel = applicantTel;
    }
    @Column(name = "applicant_mail")
    public String getApplicantMail() {
        return applicantMail;
    }
    public void setApplicantMail(String applicantMail) {
        this.applicantMail = applicantMail;
    }
    @Column(name = "is_grant")
    public Integer getIsGrant() {
        return isGrant;
    }
    public void setIsGrant(Integer isGrant) {
        this.isGrant = isGrant;
    }
    @Column(name = "grant_admin_team")
    public String getGrantAdminTeam() {
        return grantAdminTeam;
    }
    public void setGrantAdminTeam(String grantAdminTeam) {
        this.grantAdminTeam = grantAdminTeam;
    }
    @Column(name = "grant_hospital")
    public String getGrantHospital() {
        return grantHospital;
    }
    public void setGrantHospital(String grantHospital) {
        this.grantHospital = grantHospital;
    }
    @Column(name = "binding_count")
    public String getBindingCount() {
        return bindingCount;
    }
    public void setBindingCount(String bindingCount) {
        this.bindingCount = bindingCount;
    }
    @Column(name = "grant_time")
    public Date getGrantTime() {
        return grantTime;
    }
    public void setGrantTime(Date grantTime) {
        this.grantTime = grantTime;
    }
}

+ 25 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/deviece/WlyyDeviceDetailDao.java

@ -0,0 +1,25 @@
/*******************************************************************************
 * Copyright (c) 2005, 2014 springside.github.io
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 *******************************************************************************/
package com.yihu.wlyy.repository.deviece;
import com.yihu.wlyy.entity.device.Device;
import com.yihu.wlyy.entity.device.DeviceDetail;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.Date;
import java.util.List;
public interface WlyyDeviceDetailDao extends PagingAndSortingRepository<DeviceDetail, Long> {
	@Query("select dd from DeviceDetail dd where dd.deviceCode=?1")
	DeviceDetail findByDeviceSn(String devicrSn);
	@Modifying
	@Query("update DeviceDetail dd set dd.isGrant=1,dd.grantAdminTeam=?1,dd.grantHospital=?2,dd.bindingCount=?3,dd.grantTime = ?4 where dd.deviceCode=?5")
	void updateAfterBinding(String adminTeam, String hospital, String isFirstBinding, Date grantTime,String deviceSn);
}

+ 6 - 4
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/device/PatientDeviceService.java

@ -195,6 +195,7 @@ public class PatientDeviceService extends BaseService {
            }
            }
        }
        }
        patientDevice.setCzrq(clock.getCurrentDate());
        patientDevice.setCzrq(clock.getCurrentDate());
        patientDevice.setDel(0);
        //当前用户的身份证
        //当前用户的身份证
        Patient patient = patientDao.findByCode(patientDevice.getUser());
        Patient patient = patientDao.findByCode(patientDevice.getUser());
        patientDevice.setUserIdcard(patient.getIdcard());
        patientDevice.setUserIdcard(patient.getIdcard());
@ -1214,16 +1215,17 @@ public class PatientDeviceService extends BaseService {
        if ("10000".equals(code) || "10001".equals(code)) {
        if ("10000".equals(code) || "10001".equals(code)) {
            flag = true;
            flag = true;
        }else {
        }else {
            String sql ="select * from wlyy_devices where device_code = '"+deviceSn+"'";
            String sql ="select count(*) num from wlyy_devices where device_code = '"+deviceSn+"'";
            Map<String,Object> map  = jdbcTemplate.queryForMap(sql);
            Map<String,Object> map  = jdbcTemplate.queryForMap(sql);
            if (map!=null && map.size()>0){
                if (patientDeviceDao.findByDeviceSn(deviceSn)==null){
            if (Integer.valueOf(String.valueOf(map.get("num")))>0){
                flag = true ;
                /*if (patientDeviceDao.findByDeviceSn(deviceSn)==null){
                    flag = true ;
                    flag = true ;
                    message="设备可以绑定";
                    message="设备可以绑定";
                }else {
                }else {
                    resultCode = -10000;
                    resultCode = -10000;
                    message="已经被绑定了!";
                    message="已经被绑定了!";
                }
                }*/
            }else {
            }else {
                resultCode = -10001;
                resultCode = -10001;
                message="没有该设备!";
                message="没有该设备!";

+ 52 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/device/WlyyDeviceDetailService.java

@ -0,0 +1,52 @@
package com.yihu.wlyy.service.app.device;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.yihu.wlyy.entity.device.DeviceDetail;
import com.yihu.wlyy.entity.patient.SignFamily;
import com.yihu.wlyy.repository.deviece.WlyyDeviceDetailDao;
import com.yihu.wlyy.repository.patient.SignFamilyDao;
import com.yihu.wlyy.service.BaseService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List;
/**
 * 设备管理
 */
@Component
@Transactional(rollbackFor = Exception.class)
public class WlyyDeviceDetailService extends BaseService {
	@Autowired
	private WlyyDeviceDetailDao wlyyDeviceDetailDao;
	@Autowired
	private SignFamilyDao signFamilyDao;
	public void updateAfterBinding(String deviceSn, String idCard, String userType, Date grantTime)throws Exception{
		DeviceDetail deviceDetail = wlyyDeviceDetailDao.findByDeviceSn(deviceSn);
		List<SignFamily> signFamilyList = signFamilyDao.findSSandJTByIdcard(idCard);
		String adminTeam="";
		String hospital = "";
		String isFirstBind = "";
		if (signFamilyList!=null && signFamilyList.size()>0){
			adminTeam = signFamilyList.get(0).getTeamCode();
			hospital = signFamilyList.get(0).getHospital();
		}
		if (deviceDetail!=null){
			isFirstBind = deviceDetail.getBindingCount();
			if (StringUtils.isNotBlank(isFirstBind)){
				JSONObject jsonObject = JSON.parseObject(isFirstBind);
				int bindCount = Integer.valueOf(String.valueOf(jsonObject.get(userType)));
				jsonObject.replace(userType,userType+1);
				isFirstBind = jsonObject.toJSONString();
			}
		}
		wlyyDeviceDetailDao.updateAfterBinding(adminTeam,hospital,isFirstBind,grantTime,deviceSn );
	}
}

+ 6 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/device/DoctorDeviceController.java

@ -85,6 +85,7 @@ public class DoctorDeviceController extends BaseController {
							 @RequestParam(value="data",required = true) String data) {
							 @RequestParam(value="data",required = true) String data) {
		try {
		try {
			PatientDevice device = objectMapper.readValue(data,PatientDevice.class);
			PatientDevice device = objectMapper.readValue(data,PatientDevice.class);
			// 设置操作医生标识
			// 设置操作医生标识
			device.setDoctor(getUID());
			device.setDoctor(getUID());
			//首绑加分判断
			//首绑加分判断
@ -284,6 +285,11 @@ public class DoctorDeviceController extends BaseController {
														  @RequestParam(value="deviceSn",required = true) String deviceSn){
														  @RequestParam(value="deviceSn",required = true) String deviceSn){
		//JSONArray objects = patientDeviceService.getDeviceByDeviceSn(deviceSn);
		//JSONArray objects = patientDeviceService.getDeviceByDeviceSn(deviceSn);
		try{
		try{
			Map<String,Object> checkMap = patientDeviceService.checkBindingDeviceSn(deviceSn);
			boolean checkFlag = (Boolean)checkMap.get("flag");
			if (!checkFlag){
				return write(-1,String.valueOf(checkMap.get("message")));
			}
			return write(200, "获取设备成功!", "data",patientDeviceService.getDeviceByDeviceSn(deviceSn));
			return write(200, "获取设备成功!", "data",patientDeviceService.getDeviceByDeviceSn(deviceSn));
		}catch (Exception e){
		}catch (Exception e){
			error(e);
			error(e);

+ 1 - 1
patient-co/patient-co-wlyy/src/main/resources/application-devtest.yml

@ -39,7 +39,7 @@ iot:
  url: http://localhost:10050/svr-iot/
  url: http://localhost:10050/svr-iot/
#健康银行配置
#健康银行配置
healthBank:
healthBank:
  url:http://localhost:10051/svr-health-bank/
  url: http://localhost:10051/svr-health-bank/
#康复计划配置
#康复计划配置
rehabilitation:
rehabilitation: