소스 검색

冲突合并

humingfen 7 년 전
부모
커밋
40a1599b16
27개의 변경된 파일1289개의 추가작업 그리고 100개의 파일을 삭제
  1. 52 0
      common/common-entity/src/main/java/com/yihu/wlyy/entity/dict/SignDict.java
  2. 107 0
      common/common-entity/src/main/java/com/yihu/wlyy/entity/kit/KitDrugDetail.java
  3. 129 0
      common/common-entity/src/main/java/com/yihu/wlyy/entity/kit/KitDrugUseRecord.java
  4. 110 0
      common/common-entity/src/main/java/com/yihu/wlyy/entity/kit/KitUseRemindRecord.java
  5. 1 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/config/MvcConfig.java
  6. 14 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/dict/SignDictDao.java
  7. 14 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/kit/KitDrugDetailDao.java
  8. 13 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/kit/KitDrugUseRecordDao.java
  9. 14 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/kit/KitUseRemindRecordDao.java
  10. 3 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/BaseService.java
  11. 8 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/FamilyContractService.java
  12. 6 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/SignWebService.java
  13. 1 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/common/account/PatientService.java
  14. 19 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/gateway/GcClientDetailsService.java
  15. 10 4
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/gateway/GcTokenService.java
  16. 247 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/kit/KitService.java
  17. 220 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/third/kit/JyKitService.java
  18. 114 90
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/sign/DoctorSignController.java
  19. 41 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/kit/KitController.java
  20. 11 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/sign/FamilyContractController.java
  21. 25 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/gateway/controller/GcTokenController.java
  22. 40 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/gateway/vo/GcClientDetailsModel.java
  23. 74 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/kit/JyKitController.java
  24. 4 0
      patient-co/patient-co-wlyy/src/main/resources/application-dev.yml
  25. 7 2
      patient-co/patient-co-wlyy/src/main/resources/application-devtest.yml
  26. 5 0
      patient-co/patient-co-wlyy/src/main/resources/application-test.yml
  27. BIN
      patient-co/patient-co-wlyy/src/main/webapp/images/activity.png

+ 52 - 0
common/common-entity/src/main/java/com/yihu/wlyy/entity/dict/SignDict.java

@ -0,0 +1,52 @@
package com.yihu.wlyy.entity.dict;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
 * add by hzp 20170608
 * 签约字典
 */
@Entity
@Table(name = "wlyy_sign_dict")
public class SignDict extends IdEntity {
    private String year;
    private String type;
    private String code;
    private String name;
    public String getYear() {
        return year;
    }
    public void setYear(String year) {
        this.year = year;
    }
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

+ 107 - 0
common/common-entity/src/main/java/com/yihu/wlyy/entity/kit/KitDrugDetail.java

@ -0,0 +1,107 @@
package com.yihu.wlyy.entity.kit;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
/**
 * Created by 刘文彬 on 2018/7/18.
 * 用药记录药品清单
 */
@Entity
@Table(name = "kit_drug_detail")
public class KitDrugDetail extends IdEntity {
    private String code;//业务code
    private String deviceSn;//药盒的sn码
    private String drugName;//药品名称
    private String drugCode;//药品编码(巨烨暂无提供)
    private String unit;//药品计量单位(药盒默认“粒”)
    private String measure;//药品计量
    private Date insertTime;//记录添加时间
    private String relationCode;//用药记录表、用药提醒(即关联的)的code
    private String drugImgUrl;//药品图片地址
    private Integer type;//清单类型(1、用药记录药品清单、2、用药提醒药品清单)
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getDeviceSn() {
        return deviceSn;
    }
    public void setDeviceSn(String deviceSn) {
        this.deviceSn = deviceSn;
    }
    public String getDrugName() {
        return drugName;
    }
    public void setDrugName(String drugName) {
        this.drugName = drugName;
    }
    public String getDrugCode() {
        return drugCode;
    }
    public void setDrugCode(String drugCode) {
        this.drugCode = drugCode;
    }
    public String getUnit() {
        return unit;
    }
    public void setUnit(String unit) {
        this.unit = unit;
    }
    public String getMeasure() {
        return measure;
    }
    public void setMeasure(String measure) {
        this.measure = measure;
    }
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public String getRelationCode() {
        return relationCode;
    }
    public void setRelationCode(String relationCode) {
        this.relationCode = relationCode;
    }
    public String getDrugImgUrl() {
        return drugImgUrl;
    }
    public void setDrugImgUrl(String drugImgUrl) {
        this.drugImgUrl = drugImgUrl;
    }
    public Integer getType() {
        return type;
    }
    public void setType(Integer type) {
        this.type = type;
    }
}

+ 129 - 0
common/common-entity/src/main/java/com/yihu/wlyy/entity/kit/KitDrugUseRecord.java

@ -0,0 +1,129 @@
package com.yihu.wlyy.entity.kit;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
/**
 * Created by 刘文彬 on 2018/7/18.
 * 药盒用药记录
 */
@Entity
@Table(name = "kit_drug_use_record")
public class KitDrugUseRecord extends IdEntity {
    private String code;//业务code
    private Date insertTime;//记录添加时间
    private Date useTime; //居民用药时间
    private Date normalTime; //居民计划用药时间
    private Integer recordType; //记录类型(1、手动,2、设备)
    private Integer useDrugStatus;//用药状态(1、按时,2、超时,3、漏用)
    private String deviceSn;//药盒的sn码
    private String deviceModel;//药盒型号
    private String patientCode;//居民code
    private String patientName;//居民姓名
    private String kitAccountId;//药盒账号id
    private String drugDetail;//药品清单json串
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getUseTime() {
        return useTime;
    }
    public void setUseTime(Date useTime) {
        this.useTime = useTime;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getNormalTime() {
        return normalTime;
    }
    public void setNormalTime(Date normalTime) {
        this.normalTime = normalTime;
    }
    public Integer getRecordType() {
        return recordType;
    }
    public void setRecordType(Integer recordType) {
        this.recordType = recordType;
    }
    public Integer getUseDrugStatus() {
        return useDrugStatus;
    }
    public void setUseDrugStatus(Integer useDrugStatus) {
        this.useDrugStatus = useDrugStatus;
    }
    public String getDeviceSn() {
        return deviceSn;
    }
    public void setDeviceSn(String deviceSn) {
        this.deviceSn = deviceSn;
    }
    public String getKitAccountId() {
        return kitAccountId;
    }
    public void setKitAccountId(String kitAccountId) {
        this.kitAccountId = kitAccountId;
    }
    public String getDrugDetail() {
        return drugDetail;
    }
    public void setDrugDetail(String drugDetail) {
        this.drugDetail = drugDetail;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getDeviceModel() {
        return deviceModel;
    }
    public void setDeviceModel(String deviceModel) {
        this.deviceModel = deviceModel;
    }
    public String getPatientCode() {
        return patientCode;
    }
    public void setPatientCode(String patientCode) {
        this.patientCode = patientCode;
    }
    public String getPatientName() {
        return patientName;
    }
    public void setPatientName(String patientName) {
        this.patientName = patientName;
    }
}

+ 110 - 0
common/common-entity/src/main/java/com/yihu/wlyy/entity/kit/KitUseRemindRecord.java

@ -0,0 +1,110 @@
package com.yihu.wlyy.entity.kit;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yihu.wlyy.entity.IdEntity;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.util.Date;
/**
 * Created by 刘文彬 on 2018/7/19.
 * 用药提醒记录
 */
@Entity
@Table(name = "kit_use_remind_record")
public class KitUseRemindRecord extends IdEntity {
    private String code;//业务code
    private Date normalTime; //居民计划用药时间
    private Date insertTime;//记录添加时间
    private Integer remindType;//提醒类型(1、到点,2、超时,3、漏用)
    private String kitAccountId;//药盒账号id
    private String deviveModel;//药盒型号
    private String patientCode;//居民code
    private String patientName;//居民姓名
    private String drugDetail;//药品清单json串
    private String deviceSn;//药盒sn码
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getNormalTime() {
        return normalTime;
    }
    public void setNormalTime(Date normalTime) {
        this.normalTime = normalTime;
    }
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    public Date getInsertTime() {
        return insertTime;
    }
    public void setInsertTime(Date insertTime) {
        this.insertTime = insertTime;
    }
    public Integer getRemindType() {
        return remindType;
    }
    public void setRemindType(Integer remindType) {
        this.remindType = remindType;
    }
    public String getKitAccountId() {
        return kitAccountId;
    }
    public void setKitAccountId(String kitAccountId) {
        this.kitAccountId = kitAccountId;
    }
    public String getDeviveModel() {
        return deviveModel;
    }
    public void setDeviveModel(String deviveModel) {
        this.deviveModel = deviveModel;
    }
    public String getPatientCode() {
        return patientCode;
    }
    public void setPatientCode(String patientCode) {
        this.patientCode = patientCode;
    }
    public String getPatientName() {
        return patientName;
    }
    public void setPatientName(String patientName) {
        this.patientName = patientName;
    }
    public String getDrugDetail() {
        return drugDetail;
    }
    public void setDrugDetail(String drugDetail) {
        this.drugDetail = drugDetail;
    }
    public String getDeviceSn() {
        return deviceSn;
    }
    public void setDeviceSn(String deviceSn) {
        this.deviceSn = deviceSn;
    }
}

+ 1 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/config/MvcConfig.java

@ -36,7 +36,7 @@ public class MvcConfig extends WebMvcConfigurerAdapter {
        // 多个拦截器组成一个拦截器链
        // addPathPatterns 用于添加拦截规则
        // excludePathPatterns 用户排除拦截
        registry.addInterceptor(gateWayInterceptor).addPathPatterns("/wlyygc/**").excludePathPatterns("/wlyygc/doctor/**", "/wlyygc/patient/**");
        registry.addInterceptor(gateWayInterceptor).addPathPatterns("/wlyygc/**","/third/juye/kit/**").excludePathPatterns("/wlyygc/doctor/**", "/wlyygc/patient/**");
        registry.addInterceptor(doctorInterceptor).addPathPatterns("/doctor/**", "/statistics/province/**", "/statistics/**", "wlyygc/doctor/**");
        registry.addInterceptor(patientInterceptor).addPathPatterns("/patient/**", "/wlyygc/patient/**");

+ 14 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/dict/SignDictDao.java

@ -0,0 +1,14 @@
package com.yihu.wlyy.repository.dict;
import com.yihu.wlyy.entity.dict.SignDict;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
/**
 * Created by Trick on 2018/7/23.
 */
public interface SignDictDao  extends PagingAndSortingRepository<SignDict, Long>, JpaSpecificationExecutor<SignDict> {
    List<SignDict> findByYear(String year);
}

+ 14 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/kit/KitDrugDetailDao.java

@ -0,0 +1,14 @@
package com.yihu.wlyy.repository.kit;
import com.yihu.wlyy.entity.kit.KitDrugDetail;
import com.yihu.wlyy.entity.kit.KitDrugUseRecord;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface KitDrugDetailDao extends PagingAndSortingRepository<KitDrugDetail, Long>, JpaSpecificationExecutor<KitDrugDetail> {
}

+ 13 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/kit/KitDrugUseRecordDao.java

@ -0,0 +1,13 @@
package com.yihu.wlyy.repository.kit;
import com.yihu.wlyy.entity.kit.KitDrugUseRecord;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface KitDrugUseRecordDao extends PagingAndSortingRepository<KitDrugUseRecord, Long>, JpaSpecificationExecutor<KitDrugUseRecord> {
}

+ 14 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/kit/KitUseRemindRecordDao.java

@ -0,0 +1,14 @@
package com.yihu.wlyy.repository.kit;
import com.yihu.wlyy.entity.kit.KitDrugUseRecord;
import com.yihu.wlyy.entity.kit.KitUseRemindRecord;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.repository.PagingAndSortingRepository;
/**
 * Created by yeshijie on 2017/8/11.
 */
public interface KitUseRemindRecordDao extends PagingAndSortingRepository<KitUseRemindRecord, Long>, JpaSpecificationExecutor<KitUseRemindRecord> {
}

+ 3 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/BaseService.java

@ -23,6 +23,9 @@ public class BaseService {
	public String getCode() {
		return UUID.randomUUID().toString().replaceAll("-", "");
	}
	public String getUUID() {
		return UUID.randomUUID().toString();
	}
	@Autowired
	private CommonUtil CommonUtil;

+ 8 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/FamilyContractService.java

@ -2,6 +2,7 @@ package com.yihu.wlyy.service.app.sign;
import com.yihu.wlyy.entity.consult.Consult;
import com.yihu.wlyy.entity.consult.ConsultTeam;
import com.yihu.wlyy.entity.dict.SignDict;
import com.yihu.wlyy.entity.doctor.OperatorLog;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.doctor.profile.DoctorService;
@ -18,6 +19,7 @@ import com.yihu.wlyy.entity.wechat.WechatTemplateConfig;
import com.yihu.wlyy.logs.BusinessLogs;
import com.yihu.wlyy.repository.consult.ConsultDao;
import com.yihu.wlyy.repository.consult.ConsultTeamDao;
import com.yihu.wlyy.repository.dict.SignDictDao;
import com.yihu.wlyy.repository.dict.SystemDictDao;
import com.yihu.wlyy.repository.doctor.*;
import com.yihu.wlyy.repository.message.MessageDao;
@ -171,6 +173,8 @@ public class FamilyContractService extends BaseService {
    private WechatTemplateConfigDao templateConfigDao;
    @Autowired
    private PatientCertificateDao patientCertificateDao;
    @Autowired
    private SignDictDao signDictDao;
    public SignFamily findSignFamilyByCode(String code) {
@ -4568,4 +4572,8 @@ public class FamilyContractService extends BaseService {
        }
        return "1";
    }
    public List<SignDict> getSignDict(){
        return signDictDao.findByYear(DateUtil.getSignYear()+"");
    }
}

+ 6 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/SignWebService.java

@ -147,6 +147,8 @@ public class SignWebService extends BaseService {
    public static String city = "350200";
    @Autowired
    private ServiceStatisticsService serviceStatisticsService;
    @Autowired
    private PatientCertificateDao patientCertificateDao;
    /**
     * 根据医生代码及签约状态编码 获取该医生签约患者的信息列表
@ -2951,5 +2953,8 @@ public class SignWebService extends BaseService {
    }
    public List<PatientCertificate> findPatientCertificate(String patient){
       List<PatientCertificate>  list =  patientCertificateDao.findByPatientAndSignYearAndDel(patient,DateUtil.getSignYear()+"","1");
       return list;
    }
}

+ 1 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/common/account/PatientService.java

@ -456,6 +456,7 @@ public class PatientService extends TokenService {
     * @param patient
     * @return
     */
    @Deprecated
    public JSONObject checkCanSignRenew(String patient) {
        JSONObject rs = new JSONObject();

+ 19 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/gateway/GcClientDetailsService.java

@ -2,18 +2,36 @@ package com.yihu.wlyy.service.gateway;
import com.yihu.wlyy.entity.gateway.GcClientDetails;
import com.yihu.wlyy.repository.gateway.GcClientDetailsDao;
import com.yihu.wlyy.service.BaseService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
/**
 * Created by chenweida on 2017/8/17.
 */
@Service
public class GcClientDetailsService {
public class GcClientDetailsService extends BaseService{
    @Autowired
    private GcClientDetailsDao gtClientDetailsDao;
    public GcClientDetails findByAppId(String appid) {
        return gtClientDetailsDao.findByAppid(appid);
    }
    @Transactional
    public GcClientDetails createClientDetails(String appUri,String createUserName,String creatieUser,String remark) throws Exception{
        GcClientDetails gcClientDetails = new GcClientDetails();
        gcClientDetails.setAppId(getUUID());
        gcClientDetails.setAppSecret(getUUID());
        gcClientDetails.setAppUri(appUri);
        gcClientDetails.setCreateUserName(createUserName);
        gcClientDetails.setCreatieUser(creatieUser);
        gcClientDetails.setCreatieTime(new Date());
        gcClientDetails.setDel(1);
        gcClientDetails.setRemark(remark);
        return gtClientDetailsDao.save(gcClientDetails);
    }
}

+ 10 - 4
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/gateway/GcTokenService.java

@ -9,6 +9,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import java.util.Date;
import java.util.UUID;
@ -33,7 +34,7 @@ public class GcTokenService {
     * @return
     */
    @Transactional
    public GcToken createToken(String appid, String appSecret, String ip) {
    public GcToken createToken(String appid, String appSecret, String ip,String overTime) {
        try {
            //把该用户之前有效的token设置为无效
            tokenDao.updateDel(appid);
@ -47,10 +48,15 @@ public class GcTokenService {
            gc.setAppid(appid);
            gc.setCreateTime(date);
            //2小时过期
            if(tokenTime==null){
                tokenTime=2;
            if(StringUtils.isEmpty(overTime)){
                if(tokenTime==null){
                    tokenTime=2;
                }
                gc.setOutTime(DateUtil.getNextMin(date, tokenTime*60));
            }else{
                gc.setOutTime(DateUtil.strToDate(overTime));
            }
            gc.setOutTime(DateUtil.getNextMin(date, tokenTime*60));
            gc.setAccesstoken(token);
            gc.setDel(1);
            tokenDao.save(gc);

+ 247 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/kit/KitService.java

@ -0,0 +1,247 @@
package com.yihu.wlyy.service.kit;
import com.yihu.device.entity.DeviceDetail;
import com.yihu.wlyy.entity.device.PatientDevice;
import com.yihu.wlyy.entity.kit.KitDrugDetail;
import com.yihu.wlyy.entity.kit.KitDrugUseRecord;
import com.yihu.wlyy.entity.kit.KitUseRemindRecord;
import com.yihu.wlyy.entity.patient.Patient;
import com.yihu.wlyy.health.repository.DeviceDetailDao;
import com.yihu.wlyy.repository.kit.KitDrugDetailDao;
import com.yihu.wlyy.repository.kit.KitDrugUseRecordDao;
import com.yihu.wlyy.repository.kit.KitUseRemindRecordDao;
import com.yihu.wlyy.repository.patient.PatientDao;
import com.yihu.wlyy.repository.patient.PatientDeviceDao;
import com.yihu.wlyy.service.BaseService;
import com.yihu.wlyy.service.common.account.PatientService;
import com.yihu.wlyy.service.third.kit.JyKitService;
import com.yihu.wlyy.util.DateUtil;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
/**
 * Created by 刘文彬 on 2018/7/18.
 * i健康药盒
 */
@Service
public class KitService extends BaseService {
    @Autowired
    private JyKitService jyKitService;
    @Autowired
    private PatientService patientService;
    @Autowired
    private KitDrugDetailDao kitDrugDetailDao;
    @Autowired
    private KitDrugUseRecordDao kitDrugUseRecordDao;
    @Autowired
    private KitUseRemindRecordDao kitUseRemindRecordDao;
    @Autowired
    private DeviceDetailDao deviceDetailDao;
    @Autowired
    private PatientDeviceDao patientDeviceDao;
    @Autowired
    private JdbcTemplate jdbcTemplate;
    public  String format = "yyyy-MM-dd HH:mm";
    /**
     * 药盒绑定
     * @param deviceSn
     * @param type
     * @throws Exception
     */
    @Transactional
    public void kitBinding(String deviceSn,String type,String patientCode) throws Exception{
        Patient patient = patientService.findByCode(patientCode);
        JSONObject dataJSONStr = jyKitService.kitBinding(deviceSn,patient.getMobile(),type);
        //绑定成功,设备添加到device库
        String sn = dataJSONStr.getString("device_sn");//设备编码
        String deviceType = dataJSONStr.getString("device_type");//设备型号
        String maxAlarm = dataJSONStr.getString("max_alarm");//设备闹钟数
        String maxDrugs = dataJSONStr.getString("max_drugs");//设备药格数
        System.out.println("sn:"+sn+",deviceType:"+deviceType+",maxAlarm:"+maxAlarm+",maxDrugs:"+maxDrugs);
        //添加设备
        DeviceDetail deviceDetail = new DeviceDetail();
        deviceDetail.setDeviceModel(deviceType);//设备型号
        deviceDetail.setDeviceName("");
        deviceDetail.setDeviceCode(sn);
        deviceDetail.setLinkman(patient.getName());
        String sql = " select f.* from wlyy_sign_family f where f.patient='' and p.status=1 ";
        List<Map<String, Object>> signFamilys1 = jdbcTemplate.queryForList(sql);
        if(signFamilys1.size()>0){
            deviceDetail.setOrgName(signFamilys1.get(0).get("hospital_name")+"");
            deviceDetail.setTel(patient.getMobile());
            deviceDetail.setGrantAdminTeam(signFamilys1.get(0).get("admin_team_code")+"");
            deviceDetail.setGrantOrgCode(signFamilys1.get(0).get("hospital")+"");
            deviceDetail.setGrantTime(new Date());
        }
        deviceDetail = deviceDetailDao.save(deviceDetail);
        //添加绑定关系
        PatientDevice patientDevice = new PatientDevice();
        patientDevice.setDeviceId(deviceDetail.getId());
        patientDevice.setDeviceSn(deviceDetail.getDeviceCode());
        patientDevice.setDeviceName(deviceDetail.getDeviceName());
        patientDevice.setUser(patientCode);
        patientDevice.setCategoryCode("3");
        patientDevice.setUserType("-1");
        patientDevice.setUserIdcard(patient.getIdcard());
        patientDevice.setCzrq(new Date());
        if("1".equals(type)){
            type="0";
        }else if("2".equals(type)){
            type="1";
        }
        patientDevice.setDel(Integer.valueOf(type));
        patientDeviceDao.save(patientDevice);
    }
    /**
     * 用药提醒
     * @param normalTime 居民计划用药时间
     * @param remindType 提醒类型(1、到点,2、超时,3、漏用)
     * @param deviveSn 药盒的sn码
     * @param kitAccountId 药盒账号id
     * @param drugDetail 药品清单json串
     */
    @Transactional
    public void drugUseRemind(String normalTime,String remindType,
                              String deviveSn,String kitAccountId,String drugDetail){
        //保存用药提醒记录
        Date currentTime = new Date();
        KitUseRemindRecord kitUseRemindRecord = new KitUseRemindRecord();
        kitUseRemindRecord.setCode(getCode());
        kitUseRemindRecord.setNormalTime(DateUtil.strToDate(normalTime, format));
        kitUseRemindRecord.setRemindType(Integer.valueOf(remindType));
        kitUseRemindRecord.setInsertTime(currentTime);
        kitUseRemindRecord.setKitAccountId(kitAccountId);
//        kitUseRemindRecord.setDeviveModel();//药盒型号
        kitUseRemindRecord.setDeviceSn(deviveSn);
        //根据药盒sn码和居民的绑定关系表,获取居民信息
        List<PatientDevice> patientDeviceList = patientDeviceDao.findByDeviceSn(deviveSn);
        if(patientDeviceList.size()>0){
            kitUseRemindRecord.setPatientCode(patientDeviceList.get(0).getUser());
            Patient patient = patientService.findByCode(patientDeviceList.get(0).getUser());
            kitUseRemindRecord.setPatientName(patient.getName());
        }
        kitUseRemindRecord.setDrugDetail(drugDetail);
        kitUseRemindRecordDao.save(kitUseRemindRecord);
        //保存药品清单信息
        JSONArray dataJSONStr = JSONArray.fromObject(drugDetail);
        List<KitDrugDetail> result = new ArrayList<KitDrugDetail>();
        for(int i =0; i<dataJSONStr.size();i++){
            KitDrugDetail kitDrugDetail = new KitDrugDetail();
            String drugName =  dataJSONStr.getJSONObject(i).getString("drugName");
            String measure = dataJSONStr.getJSONObject(i).getString("measure");
            String drugImgUrl = dataJSONStr.getJSONObject(i).getString("drugImgUrl");
            kitDrugDetail.setCode(getCode());
            kitDrugDetail.setDeviceSn(deviveSn);
            kitDrugDetail.setDrugName(drugName);
            kitDrugDetail.setUnit("粒");
            kitDrugDetail.setMeasure(measure);
            kitDrugDetail.setInsertTime(currentTime);
            kitDrugDetail.setRelationCode(kitUseRemindRecord.getCode());
            kitDrugDetail.setDrugImgUrl(drugImgUrl);
            kitDrugDetail.setType(2);//清单类型(1、用药记录药品清单、2、用药提醒药品清单)
            result.add(kitDrugDetail);
        }
        kitDrugDetailDao.save(result);
    }
    /**
     * 同步居民用药记录
     * @param useTime 居民用药时间
     * @param normalTime 居民计划用药时间
     * @param recordType 记录类型(1、手动,2、设备)
     * @param useDrugStatus 用药状态(1、按时,2、超时,3、漏用)
     * @param deviveSn 药盒的sn码
     * @param kitAccountId 药盒账号id
     * @param drugDetail 药品清单json串
     */
    @Transactional
    public void useDrugRecord(String useTime,String normalTime,String recordType,String useDrugStatus,
                              String deviveSn,String kitAccountId,String drugDetail) throws Exception{
        //保存用药信息
        Date currentTime = new Date();
        KitDrugUseRecord kitDrugUseRecord = new KitDrugUseRecord();
        kitDrugUseRecord.setCode(getCode());
        kitDrugUseRecord.setInsertTime(currentTime);
        kitDrugUseRecord.setUseTime(DateUtil.strToDate(useTime, format));
        kitDrugUseRecord.setNormalTime(DateUtil.strToDate(normalTime, format));
        kitDrugUseRecord.setRecordType(Integer.valueOf(recordType));
        kitDrugUseRecord.setUseDrugStatus(Integer.valueOf(useDrugStatus));
        kitDrugUseRecord.setDeviceSn(deviveSn);
        kitDrugUseRecord.setKitAccountId(kitAccountId);
        kitDrugUseRecord.setDrugDetail(drugDetail);
        //根据药盒sn码和居民的绑定关系表,获取居民信息
        List<PatientDevice> patientDeviceList = patientDeviceDao.findByDeviceSn(deviveSn);
        if(patientDeviceList.size()>0){
            kitDrugUseRecord.setPatientCode(patientDeviceList.get(0).getUser());
            Patient patient = patientService.findByCode(patientDeviceList.get(0).getUser());
            kitDrugUseRecord.setPatientName(patient.getName());
        }
        kitDrugUseRecord.setDrugDetail(drugDetail);
        kitDrugUseRecordDao.save(kitDrugUseRecord);
        //保存药品清单信息
        JSONArray dataJSONStr = JSONArray.fromObject(drugDetail);
        List<KitDrugDetail> result = new ArrayList<KitDrugDetail>();
        for(int i =0; i<dataJSONStr.size();i++){
            KitDrugDetail kitDrugDetail = new KitDrugDetail();
            String drugName =  dataJSONStr.getJSONObject(i).getString("drugName");
            String measure = dataJSONStr.getJSONObject(i).getString("measure");
            String drugImgUrl = dataJSONStr.getJSONObject(i).getString("drugImgUrl");
            kitDrugDetail.setCode(getCode());
            kitDrugDetail.setDeviceSn(deviveSn);
            kitDrugDetail.setDrugName(drugName);
            kitDrugDetail.setUnit("粒");
            kitDrugDetail.setMeasure(measure);
            kitDrugDetail.setInsertTime(currentTime);
            kitDrugDetail.setRelationCode(kitDrugUseRecord.getCode());
            kitDrugDetail.setDrugImgUrl(drugImgUrl);
            kitDrugDetail.setType(1);//清单类型(1、用药记录药品清单、2、用药提醒药品清单)
            result.add(kitDrugDetail);
        }
        kitDrugDetailDao.save(result);
    }
    public static void main(String[] args) {
        String drugDetail =
                "[{" +
                "\"drugName\":\"aa\"," +
                "\"measure\":\"bb\"," +
                "\"drugImgUrl\":\"cc\"" +
                "},"+"{" +
                        "\"drugName\":\"aa\"," +
                                "\"measure\":\"bb\"," +
                                "\"drugImgUrl\":\"cc\"" +
                                "}"+"]";
//        JSONObject drugDetailJson = JSONObject.fromObject(drugDetail);
        JSONArray a = JSONArray.fromObject(drugDetail);
        for(int i = 0;i<a.size();i++){
            String drugName = a.getJSONObject(i).getString("drugName");
            String measure = a.getJSONObject(i).getString("measure");
            String drugImgUrl = a.getJSONObject(i).getString("drugImgUrl");
            System.out.println(i+","+drugName+","+measure+","+drugImgUrl);
        }
//        JSONArray b = drugDetailJson.getJSONArray("drug");
//        for(int i = 0;i<b.size();i++){
//            String drugName = b.getJSONObject(i).getString("drugName");
//            String measure = b.getJSONObject(i).getString("measure");
//            String drugImgUrl = b.getJSONObject(i).getString("drugImgUrl");
//            System.out.println(i+","+drugName+","+measure+","+drugImgUrl);
//        }
        System.out.println("appId:"+UUID.randomUUID().toString());
        System.out.println("appSecret:"+UUID.randomUUID().toString());
    }
}

+ 220 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/third/kit/JyKitService.java

@ -0,0 +1,220 @@
package com.yihu.wlyy.service.third.kit;
import com.yihu.device.entity.DeviceDetail;
import com.yihu.wlyy.entity.device.PatientDevice;
import com.yihu.wlyy.health.repository.DeviceDetailDao;
import com.yihu.wlyy.util.HttpClientUtil;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
/**
 * Created by 刘文彬 on 2018/7/18.
 * 巨烨药盒接口
 */
@Service
public class JyKitService {
    @Value("${juye.companyCode}")
    private String companyCode;
//    @Value("${juye.url}")
    private String jyUrl="http://zayata.ocip.net:30080/index.php?s=/Company/Device/";
//    @Value("${juye.token}")
//    private String token;
    @Autowired
    private HttpClientUtil httpClientUtil;
    @Autowired
    private StringRedisTemplate redisTemplate;
    private String timeTermRedisKey = "juye:getToken:time_term";
    private String tokenRedisKey = "juye:getToken:token";
    /****************************************接口路径 start**************************************************/
    private String kitBinding = jyUrl+"companyBindDevice";//药盒绑定接口
//    private String getKitInfo = jyUrl+"";//获取药盒信息接口
    private String getKitSetInfo = jyUrl+"getInfoByDeviceSn";//获取药盒信息接口
    private String getKitToken = jyUrl+"getToken";//获取巨烨token
    /****************************************接口路径 end**************************************************/
    /**
     * 设备绑定
     * @param deviceSn
     * @param tel
     * @param type
     * @throws Exception
     */
    public JSONObject kitBinding(String deviceSn,String tel,String type) throws Exception{
        String token = tokenExpire();//获取token
        List<NameValuePair> params = new ArrayList<>();
        params.add(new BasicNameValuePair("token", token));
        params.add(new BasicNameValuePair("device_sn", deviceSn));
        params.add(new BasicNameValuePair("tel", tel));
        params.add(new BasicNameValuePair("type", type));
        String response = getRequestPost(params,kitBinding);
        JSONObject returnJson = JSONObject.fromObject(response);
        if (returnJson.getInt("status") != 200) {
            throw new Exception("jy kitBinding error status not 200");
        }
        JSONObject dataJSONStr = null ;
        if (returnJson.containsKey("data")) {
            dataJSONStr = returnJson.getJSONObject("data");//返回设备信息
            return dataJSONStr;
        }
        throw new Exception("jy kitBinding error data not ");
    }
//    /**
//     * 获取药盒设备信息接口
//     * @param deviceSn
//     * @throws Exception
//     */
//    public JSONArray getKitInfo(String deviceSn) throws Exception{
//        List<NameValuePair> params = new ArrayList<>();
//        params.add(new BasicNameValuePair("device_sn", deviceSn));
//        String response = getRequestPost(params,getKitInfo);
//        JSONObject returnJson = JSONObject.fromObject(response);
//        if (returnJson.getInt("status") != 200) {
//            throw new Exception("jy kitInfo error status not 200");
//        }
//        JSONArray dataJSONStr = null ;
//        if (returnJson.containsKey("data")) {
//            dataJSONStr = returnJson.getJSONArray("data");
//            return dataJSONStr;
//        }else {
//            throw new Exception("jy kitInfo error not data");
//        }
//    }
    /**
     * 获取智能药盒的设置情况
     * 1、当前使用药品清单,应包含药品名称、药品编码。
     * 2、当前设置用药提醒(用药方式):用药时间、药品清单(药品名称、药品编码、使用计量)。
     * @param deviceSn 多个sn以“,”分隔
     * @throws Exception
     */
    public void getKitSetInfo(String deviceSn) throws Exception{
        String token = tokenExpire();//获取token
        List<NameValuePair> params = new ArrayList<>();
        params.add(new BasicNameValuePair("token", token));
        params.add(new BasicNameValuePair("device_sn", deviceSn));
        String response = getRequestPost(params,getKitSetInfo);
        JSONObject returnJson = JSONObject.fromObject(response);
        if (returnJson.getInt("status") != 200) {
            throw new Exception("jy kitInfo error status not 200");
        }
        JSONArray dataJSONStr = null ;
        if (returnJson.containsKey("data")) {
            dataJSONStr = returnJson.getJSONArray("data");//多个设备信息
            for(int i=0 ;i<dataJSONStr.size();i++){
                JSONObject drugInfo = dataJSONStr.getJSONObject(i).getJSONObject("drug_info");//当前药品信息,即处方信息
                JSONArray alarmInfo = dataJSONStr.getJSONObject(i).getJSONArray("alarm_info");//闹钟信息(设置的全部闹钟列表),即当前用药详情
                for(int j=0 ;j<alarmInfo.size();j++){
                    JSONArray drugs = alarmInfo.getJSONObject(j).getJSONArray("drugs");//某个闹钟药品信息列表
                    String alarmTime = alarmInfo.getJSONObject(j).getString("alarm_time");
                    for(int k=0 ;k<drugs.size();k++){
                        String drugName = drugs.getJSONObject(k).getString("drug_name");
                        String drugAmount = drugs.getJSONObject(k).getString("drug_amount");
                        String drugImgUrl = drugs.getJSONObject(k).getString("drug_imgurl");
                    }
                }
            }
        }else {
            throw new Exception("jy kitInfo error not data");
        }
    }
    /**
     * 获取巨烨的token
     */
    public String getJuyeToken() throws Exception{
        List<NameValuePair> params = new ArrayList<>();
        String response = getRequestPost(params,getKitToken);
        JSONObject returnJson = JSONObject.fromObject(response);
        if (returnJson.getInt("status") != 200) {
            throw new Exception("jy kitInfo error status not 200");
        }
        String token = null;
        JSONObject dataJSONStr = null ;
        if (returnJson.containsKey("data")) {
            dataJSONStr = returnJson.getJSONObject("data");
            token = dataJSONStr.getString("token");//token
            String timeTerm = dataJSONStr.getString("time_term");//token过期时间戳
            Long overTime = Long.valueOf(timeTerm) - new Date().getTime();
            //存储在redis中
            redisTemplate.opsForValue().set(timeTermRedisKey,timeTerm,overTime,TimeUnit.SECONDS);
            redisTemplate.opsForValue().set(tokenRedisKey,token,overTime,TimeUnit.SECONDS);
            System.out.println(timeTermRedisKey+":"+redisTemplate.getExpire(tokenRedisKey,TimeUnit.SECONDS));
            System.out.println(tokenRedisKey+":"+redisTemplate.getExpire(tokenRedisKey,TimeUnit.SECONDS));
//            redisTemplate.delete("juye:getToken:token");
        }else {
            throw new Exception("jy kitInfo error not data");
        }
        return token;
    }
    /**
     * 判断巨烨token是否过期,有效则返回token,否则返回null
     * @return
     */
    public String tokenExpire() throws Exception{
       String timeTerm = redisTemplate.opsForValue().get(timeTermRedisKey);
       String token = null;
       if(StringUtils.isEmpty(timeTerm)){
           token = getJuyeToken();
           return token;
       }
       Long timeTermLong = Long.valueOf(timeTerm);
       if(new Date().getTime()>timeTermLong){
           token = redisTemplate.opsForValue().get(tokenRedisKey);
           return token;
       }else{
           token = getJuyeToken();
           return token;
       }
    }
    /**
     * post请求
     * @param params
     * @param url
     * @return
     * @throws Exception
     */
    public String getRequestPost(List<NameValuePair> params,String url) throws Exception{
        params.add(new BasicNameValuePair("company_code", companyCode));
        String response = httpClientUtil.post(url, params, "UTF-8");
        return response;
    }
    /**
     * get请求
     * @param params
     * @param url
     * @return
     * @throws Exception
     */
    public String getRequestGet(List<NameValuePair> params,String url) throws Exception{
        String paramStr="?company_code="+companyCode;
        for(NameValuePair one : params){
            paramStr += "&"+one.getName()+"="+one.getValue();
        }
        String response = httpClientUtil.get(url+paramStr,  "UTF-8");
        return response;
    }
}

+ 114 - 90
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/sign/DoctorSignController.java

@ -57,16 +57,16 @@ public class DoctorSignController extends WeixinBaseController {
    @RequestMapping(value = "getPatientFamilyServer",method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation("获取居民慢病服务类型")
    public String getPatientFamilyServer(@ApiParam(name = "patient", value = "居民code") @RequestParam(required = true) String patient){
    public String getPatientFamilyServer(@ApiParam(name = "patient", value = "居民code") @RequestParam(required = true) String patient) {
        try {
            JSONObject json = signWebService.getPatientFamilyServer(patient);
            if(json.has("msg")){
                return error(-1,json.getString("msg"));
            if (json.has("msg")) {
                return error(-1, json.getString("msg"));
            }
            return write(200,"获取成功","data",json);
        }catch (Exception e){
            return write(200, "获取成功", "data", json);
        } catch (Exception e) {
            error(e);
            return error(-1,"请求失败");
            return error(-1, "请求失败");
        }
    }
@ -127,14 +127,14 @@ public class DoctorSignController extends WeixinBaseController {
            String doctor = getUID();
            Page<Object> page = infoService.findPatientByDoctorSign(doctor, id, pagesize, patientName);
            JSONArray array = new JSONArray();
            Map<Object,Object> exitMap = new HashMap<>();
            Map<Object, Object> exitMap = new HashMap<>();
            if (page != null) {
                for (Object obj : page) {
                    Object[] temp = (Object[]) obj;
                    if (temp == null) {
                        continue;
                    }
                    if(exitMap.get(temp[9])!=null){//防止患者既有三师签约也有家庭签约导致数据重复
                    if (exitMap.get(temp[9]) != null) {//防止患者既有三师签约也有家庭签约导致数据重复
                        continue;
                    }
                    JSONObject json = new JSONObject();
@ -159,7 +159,7 @@ public class DoctorSignController extends WeixinBaseController {
                    //患者联系方式
                    json.put("mobile", temp[10]);
                    array.put(json);
                    exitMap.put(temp[9],temp);
                    exitMap.put(temp[9], temp);
                }
            }
            return write(200, "查询成功!", "list", array);
@ -229,12 +229,13 @@ public class DoctorSignController extends WeixinBaseController {
     */
    @RequestMapping("/sign_info")
    public String getSignInfoByDoctor(
            @RequestParam(required = false)Integer status,
            @RequestParam(required = false)Integer doctorType,
            @RequestParam(required = false)String patientInfo,
            @RequestParam(required = false)Integer page,
            @RequestParam(required = false)Integer pageSize) {
        try {page = page > 0 ? page -1 : 0;
            @RequestParam(required = false) Integer status,
            @RequestParam(required = false) Integer doctorType,
            @RequestParam(required = false) String patientInfo,
            @RequestParam(required = false) Integer page,
            @RequestParam(required = false) Integer pageSize) {
        try {
            page = page > 0 ? page -1 : 0;
            List<Map<String, Object>> listSign = signWebService.getSignWebByDoctor(getUID(), status, patientInfo, page, pageSize);
            JSONObject data = new JSONObject();
@ -298,7 +299,7 @@ public class DoctorSignController extends WeixinBaseController {
                    if (status == 3) {
                        boolean epTime = false;
                        try {
                            epTime = redisTemplate.hasKey("wechat:focus:remind:flag:"+temp.get("patient"));
                            epTime = redisTemplate.hasKey("wechat:focus:remind:flag:" + temp.get("patient"));
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
@ -341,12 +342,12 @@ public class DoctorSignController extends WeixinBaseController {
    @RequestMapping("/sign_info_count")
    @ApiOperation(value = "签约居民数目")
    public String getSignWebByDoctorCount(){
        try{
    public String getSignWebByDoctorCount() {
        try {
            //hxmD201703150222
            return write(200,"查询成功","data",signWebService.getSignWebByDoctorCount(getUID()));
        }catch (Exception e){
            return error(-1,"查询失败");
            return write(200, "查询成功", "data", signWebService.getSignWebByDoctorCount(getUID()));
        } catch (Exception e) {
            return error(-1, "查询失败");
        }
    }
@ -357,11 +358,11 @@ public class DoctorSignController extends WeixinBaseController {
     */
    @RequestMapping(value = "/is_remind_focus_all")
    @ApiOperation(value = "今天是否已全部提醒关注")
    public String isRemindFocusAllToday(){
        try{
            return write(200,"查询成功","data",signWebService.isRemindFocusAll(getUID()));
        }catch (Exception e){
            return error(-1,"查询失败");
    public String isRemindFocusAllToday() {
        try {
            return write(200, "查询成功", "data", signWebService.isRemindFocusAll(getUID()));
        } catch (Exception e) {
            return error(-1, "查询失败");
        }
    }
@ -372,29 +373,29 @@ public class DoctorSignController extends WeixinBaseController {
     */
    @RequestMapping(value = "/is_remind_expenses_all")
    @ApiOperation(value = "今天是否已全部提醒缴费")
    public String isRemindFExpensesAllToday(){
        try{
            return write(200,"查询成功","data",signWebService.isRemindExpensesAll(getUID()));
        }catch (Exception e){
    public String isRemindFExpensesAllToday() {
        try {
            return write(200, "查询成功", "data", signWebService.isRemindExpensesAll(getUID()));
        } catch (Exception e) {
            error(e);
            return error(-1,"查询失败");
            return error(-1, "查询失败");
        }
    }
    /**
     * 获取续签约患者信息
     *
     * @param status     签约状态 1:待签约 2 待缴费 3 已签约
     * @param status 签约状态 1:待签约 2 待缴费 3 已签约
     * @return
     */
    @RequestMapping("/sign_info_renew")
    @ApiOperation(value = "医生获取获取列表")
    public String getSignRenewInfoByDoctor(
            @RequestParam(required = true)int status,
            @RequestParam(required = true)int page,
            @RequestParam(required = true)int pageSize) {
            @RequestParam(required = true) int status,
            @RequestParam(required = true) int page,
            @RequestParam(required = true) int pageSize) {
        try {
            page = page > 0 ? page -1 : 0;
            page = page > 0 ? page - 1 : 0;
            List<Map<String, Object>> listSign = signWebService.getSignRenewWebByDoctor(getUID(), status, page, pageSize);
            //List<Map<String, Object>> listSign = signWebService.getSignRenewWebByDoctor("64de930c-5b15-11e6-8344-fa163e8aee56", status, page, pageSize);
            JSONObject data = new JSONObject();
@ -419,7 +420,7 @@ public class DoctorSignController extends WeixinBaseController {
                    json.put("status", temp.get("status"));
                    json.put("openid", temp.get("openid"));
                    json.put("renewTime", temp.get("czrq"));
                    json.put("renewFlag",temp.get("renewFlag"));
                    json.put("renewFlag", temp.get("renewFlag"));
                    String statusName = "";
                    switch (Integer.parseInt(temp.get("status").toString())) {
                        case 0:
@ -455,24 +456,25 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 批量提醒居民续签
     *
     * @return
     */
    @RequestMapping("/sendRenewToPatients")
    @ApiOperation(value = "提醒用户签约接口")
    @ObserverRequired
    public String sendRenewToPatients(){
        try{
            int rs ;
            if(DateUtil.getNowMonth()>=7){
                rs = signWebService.sendRenewOverToPatients(getAccessToken(),getUID());
            }else{
                rs = signWebService.sendRenewToPatients(getAccessToken(),getUID());
    public String sendRenewToPatients() {
        try {
            int rs;
            if (DateUtil.getNowMonth() >= 7) {
                rs = signWebService.sendRenewOverToPatients(getAccessToken(), getUID());
            } else {
                rs = signWebService.sendRenewToPatients(getAccessToken(), getUID());
            }
            //int rs = signWebService.sendRenewToPatients(getAccessToken(),"zbqD201703150222");
            if(rs == 0){
            if (rs == 0) {
                return write(200, "您当前签约用户无需提醒!", "data", rs);
            }else{
            } else {
                return write(200, "提醒成功!", "data", rs);
            }
        }catch (Exception e){
@ -483,18 +485,18 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 同意或拒绝
     *
     * @param state
     * @param refuseReason 医生拒签原因
     *
     * @return
     */
    @RequestMapping("/agreeRenew")
    @ApiOperation(value = "医生处理签约")
    @ObserverRequired
    public String agreeRenew(@RequestParam(required = true)String state,
                             @RequestParam(required = true)String patient,
    public String agreeRenew(@RequestParam(required = true) String state,
                             @RequestParam(required = true) String patient,
                             @RequestParam(required = false) Long mesId,
                             @RequestParam(required = false)String signCode,
                             @RequestParam(required = false) String signCode,
                             @RequestParam(required = false) String health,
                             @RequestParam(required = false) String disease,
                             @RequestParam(required = false) String custom,
@ -502,16 +504,16 @@ public class DoctorSignController extends WeixinBaseController {
                             @RequestParam(required = false) String healthDoctor,
                             @RequestParam(required = false) Long teamCode,
                             @RequestParam(required = false) String expenses,
                             @RequestParam(required = false) String refuseReason){
        try{
                             @RequestParam(required = false) String refuseReason) {
        try {
            //屏蔽了预签约
            int rs = 0;
            rs =signWebService.agreeRenewOverDue(getAccessToken(),getUID(),patient,state,mesId,"",signCode,health,disease,custom,sevId,healthDoctor,teamCode,expenses,refuseReason);
            if(rs != 1){
            rs = signWebService.agreeRenewOverDue(getAccessToken(), getUID(), patient, state, mesId, "", signCode, health, disease, custom, sevId, healthDoctor, teamCode, expenses, refuseReason);
            if (rs != 1) {
                //设置代码为已读
                signWebService.setMessState(mesId);
                return  write(200, "未找到签约记录", "data", rs);
            }else{
                return write(200, "未找到签约记录", "data", rs);
            } else {
                return write(200, "操作成功!", "data", rs);
            }
@ -546,7 +548,7 @@ public class DoctorSignController extends WeixinBaseController {
//            }else{
//                return write(200, "操作成功!", "data", rs);
//            }
        }catch (Exception e){
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
@ -592,19 +594,19 @@ public class DoctorSignController extends WeixinBaseController {
//    }
    /**
     *
     *统计
     * 统计
     * 咨询量、获取待预约、获取健康教育、获取健康指导
     *
     * @return
     */
    @RequestMapping("/getSignCountInfoInYear")
    @ApiOperation(value = "统计咨询量、获取待预约、获取健康教育、获取健康指导")
    public String getSignCountInfoInYear(@RequestParam(required = true)String patient){
        try{
            JSONObject rs =signWebService.getSignCountInfoInYear(patient);
    public String getSignCountInfoInYear(@RequestParam(required = true) String patient) {
        try {
            JSONObject rs = signWebService.getSignCountInfoInYear(patient);
            //JSONObject rs =signWebService.getRenewYearCount("64de930c-5b15-11e6-8344-fa163e8aee56");
            return write(200, "操作成功!", "data", rs);
        }catch (Exception e){
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
@ -613,19 +615,19 @@ public class DoctorSignController extends WeixinBaseController {
    @RequestMapping("/remindPatientRenew")
    @ApiOperation(value = "提醒居民续签")
    @ObserverRequired
    public String remindPatientRenew(@RequestParam(required = true)String patient){
        try{
            int rs =signWebService.remainPatientRenew(getAccessToken(),patient,getUID());
    public String remindPatientRenew(@RequestParam(required = true) String patient) {
        try {
            int rs = signWebService.remainPatientRenew(getAccessToken(), patient, getUID());
            //int rs =signWebService.remainPatientRenew(getAccessToken(),patient,"zbqD201703150222");
            if(rs==-1){
            if (rs == -1) {
                return error(-1, "提醒失败");
            }else if(rs ==1){
            } else if (rs == 1) {
                return write(200, "微信提醒成功!", "data", rs);
            }else if(rs ==2){
            } else if (rs == 2) {
                return write(200, "短信提醒成功!", "data", rs);
            }
            return error(-1, "提醒失败");
        }catch (Exception e){
        } catch (Exception e) {
            error(e);
            return error(-1, "请求失败");
        }
@ -633,12 +635,13 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 验证是否允许签约
     *
     * @param patient
     * @return
     */
    @RequestMapping(value = "/checkCanRenew", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String checkCanRenew(@RequestParam(required = true) String patient){
    public String checkCanRenew(@RequestParam(required = true) String patient) {
        try {
            //JSONObject result = patientService.checkCanSignRenew(patient);
            JSONObject result = patientService.checkCanRenewNew(patient);
@ -651,11 +654,12 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 获取签约字典数据
     *
     * @return
     */
    @RequestMapping(value = "/getSigndict", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getSigndict(@RequestParam(required = false) String signYear){
    public String getSigndict(@RequestParam(required = false) String signYear) {
        try {
            JSONArray result = patientService.getSigndict(signYear);
            return write(200, "查询成功", "data", result);
@ -667,11 +671,12 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 获取签约字典数据
     *
     * @return
     */
    @RequestMapping(value = "/getSigndictTree", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getSigndictTree(@RequestParam(required = true) Long teamCode){
    public String getSigndictTree(@RequestParam(required = true) Long teamCode) {
        try {
            JSONArray result = patientService.getSignByTeamCodeGpbyServer(teamCode);
            return write(200, "查询成功", "data", result);
@ -683,13 +688,14 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 获取当前医生签约关系分组
     *
     * @return
     */
    @RequestMapping(value = "/getSignByDoctorCodeGpbyServer", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getSignByDoctorCodeGpbyServer(){
    public String getSignByDoctorCodeGpbyServer() {
        try {
            JSONArray result = patientService.getSignByDoctorCodeGpbyServer(getUID(),null, false, "");
            JSONArray result = patientService.getSignByDoctorCodeGpbyServer(getUID(), null, false, "");
            //JSONArray result = patientService.getSignByDoctorCodeGpbyServer("xh1D201703150222");
            return write(200, "查询成功", "data", result);
        } catch (Exception e) {
@ -699,12 +705,13 @@ public class DoctorSignController extends WeixinBaseController {
    }
    /**
     *  获取团队名称
     * 获取团队名称
     *
     * @return
     */
    @RequestMapping(value = "/getTeamNameByTeamCode", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getTeamNameByTeamCode(@RequestParam(required = true) Long teamCode){
    public String getTeamNameByTeamCode(@RequestParam(required = true) Long teamCode) {
        try {
            String result = patientService.getTeamNameByTeamCode(teamCode);
            return write(200, "查询成功", "data", result);
@ -715,7 +722,7 @@ public class DoctorSignController extends WeixinBaseController {
    @RequestMapping(value = "/getPatientSignLogInfo", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getPatientSignLogInfo(@RequestParam(required = true)String patient){
    public String getPatientSignLogInfo(@RequestParam(required = true) String patient) {
        try {
            JSONObject result = signWebService.getPatientSignLogInfo(patient);
            return write(200, "查询成功", "data", result);
@ -727,12 +734,12 @@ public class DoctorSignController extends WeixinBaseController {
    @RequestMapping(value = "/updateSignServerByCode", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    @ObserverRequired
    public String updateSignServerByCode(@RequestParam(required = true)String signCode,@RequestParam(required = true)String sevId){
    public String updateSignServerByCode(@RequestParam(required = true) String signCode, @RequestParam(required = true) String sevId) {
        try {
            int result = signWebService.updateSignServerByCode(signCode,sevId);
            if(result==1){
            int result = signWebService.updateSignServerByCode(signCode, sevId);
            if (result == 1) {
                return write(200, "保存成功", "data", result);
            }else{
            } else {
                return write(200, "保存失败", "data", result);
            }
        } catch (Exception e) {
@ -743,11 +750,12 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 获取厦门市区
     *
     * @return
     */
    @RequestMapping(value = "/getTownList", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getTownList(){
    public String getTownList() {
        try {
            return write(200, "查询成功", "data", signWebService.getTownList());
        } catch (Exception e) {
@ -758,12 +766,13 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 获取区域下街道
     *
     * @param town
     * @return
     */
    @RequestMapping(value = "/getStreetListByTown", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getStreetListByTown(@RequestParam(required = true)String town){
    public String getStreetListByTown(@RequestParam(required = true) String town) {
        try {
            return write(200, "查询成功", "data", signWebService.getStreetListByTown(town));
        } catch (Exception e) {
@ -775,12 +784,13 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 获取街道下居委会
     *
     * @param street
     * @return
     */
    @RequestMapping(value = "/getCountryListByStreet", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String getCountryListByStreet(@RequestParam(required = true)String street){
    public String getCountryListByStreet(@RequestParam(required = true) String street) {
        try {
            return write(200, "查询成功", "data", signWebService.getCountryListByStreet(street));
        } catch (Exception e) {
@ -791,35 +801,49 @@ public class DoctorSignController extends WeixinBaseController {
    /**
     * 获取居委会字段
     *
     * @param countryCode
     * @return
     */
    @RequestMapping(value = "/updatePatientCountry", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String setPatientCountry(@RequestParam(required = true)String countryCode){
    public String setPatientCountry(@RequestParam(required = true) String countryCode) {
        try {
            return write(200, "保存成功", "data", signWebService.setPatientCountry(countryCode,getRepUID()));
            return write(200, "保存成功", "data", signWebService.setPatientCountry(countryCode, getRepUID()));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败");
        }
    }
    
    /**
     * 根据身份证号同步居民签约信息
     *
     * @param idcard
     * @return
     */
    @RequestMapping(value = "/loadSignFamilyByIdcard", method = {RequestMethod.GET, RequestMethod.POST})
    @ResponseBody
    public String loadSignFamilyByIdcard(@RequestParam(required = true)String idcard){
    public String loadSignFamilyByIdcard(@RequestParam(required = true) String idcard) {
        try {
            String re = jwSignService.LoadSignFamilyByIdcard(idcard);
            Patient patient = patientService.findByIdcard(idcard);
            return write(200, "更新签约成功","patient",patient);
            return write(200, "更新签约成功", "patient", patient);
        } catch (Exception e) {
            error(e);
            return error(-1, "更新签约失败!");
        }
    }
    @RequestMapping(value = "/findPatientCertificate", method = {RequestMethod.GET})
    @ResponseBody
    @ApiOperation("获取居民服务类型凭证")
    public String findPatientCertificate(@ApiParam(name = "patient", value = "居民code") @RequestParam(required = true)String patient) {
        try {
            return write(200, "查询成功", "data", signWebService.findPatientCertificate(patient));
        } catch (Exception e) {
            error(e);
            return error(-1, "查询失败!");
        }
    }
}

+ 41 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/kit/KitController.java

@ -0,0 +1,41 @@
package com.yihu.wlyy.web.patient.kit;
import com.yihu.wlyy.service.kit.KitService;
import com.yihu.wlyy.service.third.kit.JyKitService;
import com.yihu.wlyy.web.BaseController;
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.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 刘文彬 on 2018/7/18.
 */
@RestController
@RequestMapping(value = "/patient/kit", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
@Api(description = "药盒居民端")
public class KitController extends BaseController {
    @Autowired
    private KitService kitService;
    @RequestMapping(value = "/kitBinding", method = RequestMethod.POST)
    @ApiOperation("药盒绑定 ")
    public String kitBinding(
            @ApiParam(name = "deviceSn", value = "药盒设备sn码", required = true) @RequestParam(value = "deviceSn", required = true) String deviceSn,
            @ApiParam(name = "type", value = "每页显示条数", required = true) @RequestParam(value = "type", required = true) String type){
        try {
            kitService.kitBinding(deviceSn,type,"915cc7da-5b1d-11e6-8344-fa163e8aee56");
            return write(200,"绑定成功!");
        }catch (Exception e) {
            e.printStackTrace();
            return error(-1,"绑定失败!");
        }
    }
}

+ 11 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/sign/FamilyContractController.java

@ -753,5 +753,16 @@ public class FamilyContractController extends WeixinBaseController {
        }
    }
    @RequestMapping("/getSignDict")
    @ApiOperation(value = "获取当前年度服务类型")
    @ResponseBody
    public String getSignDict() {
        try{
            return write(200, "操作成功!", "data", familyContractService.getSignDict());
        }catch (Exception e){
            error(e);
            return error(-1, "请求失败");
        }
    }
}

+ 25 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/gateway/controller/GcTokenController.java

@ -7,6 +7,7 @@ import com.yihu.wlyy.repository.gateway.GcHttpLogDao;
import com.yihu.wlyy.service.gateway.GcClientDetailsService;
import com.yihu.wlyy.service.gateway.GcTokenService;
import com.yihu.wlyy.util.NetworkUtil;
import com.yihu.wlyy.web.third.gateway.vo.GcClientDetailsModel;
import com.yihu.wlyy.web.third.gateway.vo.GcTokenModel;
import com.yihu.wlyy.web.third.gateway.vo.base.BaseResultModel;
import com.yihu.wlyy.web.third.gateway.vo.base.ResultOneModel;
@ -45,6 +46,7 @@ public class GcTokenController {
    public ResultOneModel<GcTokenModel> getToken(
            @ApiParam(name = "appid", value = "appid", required = true) @RequestParam(required = true, value = "appid") String appid,
            @ApiParam(name = "appSecret", value = "appSecret", required = true) @RequestParam(required = true, value = "appSecret") String appSecret,
            @ApiParam(name = "过期时间 yyyy-MM-dd", value = "overTime", required = false) @RequestParam(required = false, value = "overTime") String overTime,
            HttpServletRequest request) {
        String ip = "";
        try {
@ -69,7 +71,7 @@ public class GcTokenController {
            //生成token
            GcToken gcToken = null;
            try {
                gcToken = gcTokenService.createToken(appid, appSecret, NetworkUtil.getIpAddress(request));
                gcToken = gcTokenService.createToken(appid, appSecret, NetworkUtil.getIpAddress(request),overTime);
                saveHttpLog(ip, new JSONObject(request.getParameterMap()).toString(), new JSONObject(gcToken).toString(), gcToken.getAccesstoken(), request.getRequestURI(), 1, "成功");
            } catch (IOException e) {
                e.printStackTrace();
@ -83,6 +85,28 @@ public class GcTokenController {
        }
    }
    @ApiOperation("生成appId,appSecret")
    @RequestMapping(value = "createGcClientDetails", method = RequestMethod.POST)
    public ResultOneModel<GcClientDetailsModel> createClientDetails(
            @ApiParam(name = "appUri", value = "appUri", required = false) @RequestParam(required = false, value = "appUri") String appUri,
            @ApiParam(name = "createUserName", value = "createUserName", required = false) @RequestParam(required = false, value = "createUserName") String createUserName,
            @ApiParam(name = "creatieUser", value = "creatieUser", required = false) @RequestParam(required = false, value = "creatieUser") String creatieUser,
            @ApiParam(name = "remark", value = "remark", required = false) @RequestParam(required = false, value = "remark") String remark
    ){
        try {
            GcClientDetails gcClientDetails = clientDetailsService.createClientDetails(appUri,createUserName,creatieUser,remark);
            if(gcClientDetails==null){
                return new ResultOneModel(BaseResultModel.statusEm.login_system_error.getCode(), BaseResultModel.statusEm.login_system_error.getMessage());
            }
            GcClientDetailsModel gcClientDetailsModel = new GcClientDetailsModel();
            BeanUtils.copyProperties(gcClientDetails, gcClientDetailsModel);
            return new ResultOneModel(gcClientDetailsModel);
        }catch (Exception e) {
            return new ResultOneModel(BaseResultModel.statusEm.login_system_error.getCode(), BaseResultModel.statusEm.login_system_error.getMessage());
        }
    }
    private void saveHttpLog(String ip, String input, String output, String token, String method, Integer flag, String message) {
        GcHttpLog gcHttpLog = new GcHttpLog();

+ 40 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/gateway/vo/GcClientDetailsModel.java

@ -0,0 +1,40 @@
package com.yihu.wlyy.web.third.gateway.vo;
import com.yihu.wlyy.entity.IdEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.sql.Timestamp;
import java.util.Date;
/**
 * GtClientDetails entity. @author MyEclipse Persistence Tools
 */
@ApiModel(description = "")
public class GcClientDetailsModel{
    // Fields
    @ApiModelProperty(value = "appId", required = false, access = "response")
    private String appId;
    @ApiModelProperty(value = "appSecret", required = false, access = "response")
    private String appSecret;
    public String getAppId() {
        return appId;
    }
    public void setAppId(String appId) {
        this.appId = appId;
    }
    public String getAppSecret() {
        return appSecret;
    }
    public void setAppSecret(String appSecret) {
        this.appSecret = appSecret;
    }
}

+ 74 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/kit/JyKitController.java

@ -0,0 +1,74 @@
package com.yihu.wlyy.web.third.kit;
import com.yihu.wlyy.service.ZyDictDataService;
import com.yihu.wlyy.service.kit.KitService;
import com.yihu.wlyy.service.third.jw.ZyDictService;
import com.yihu.wlyy.service.third.kit.JyKitService;
import com.yihu.wlyy.web.BaseController;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.springframework.beans.factory.annotation.Autowired;
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;
import java.util.ArrayList;
import java.util.List;
/**
 * Created by chenweida on 2017/8/10.
 * 巨烨药盒接口
 */
@RestController
@RequestMapping("/third/juye/kit/")
public class JyKitController extends BaseController {
    @Autowired
    private JyKitService jyKitService;
    @Autowired
    private KitService kitService;
    @ApiOperation("同步居民用药记录")
    @RequestMapping(value = "/drug/useDrugRecord", method = RequestMethod.POST)
    public String useDrugRecord(
            @ApiParam(name = "useTime", value = "居民用药时间 yyyy-MM-dd HH:mm")@RequestParam(value = "useTime", required = true) String useTime,
            @ApiParam(name = "normalTime", value = "居民计划用药时间 yyyy-MM-dd HH:mm")@RequestParam(value = "normalTime", required = true) String normalTime,
            @ApiParam(name = "recordType", value = "记录类型(1、手动,2、设备)")@RequestParam(value = "recordType", required = true) String recordType,
            @ApiParam(name = "useDrugStatus", value = "用药状态(1、按时,2、超时,3、漏用)")@RequestParam(value = "useDrugStatus", required = true) String useDrugStatus,
            @ApiParam(name = "kitSn", value = "药盒的sn码")@RequestParam(value = "kitSn", required = true) String kitSn,
            @ApiParam(name = "kitAccountId", value = "药盒账号id")@RequestParam(value = "kitAccountId", required = true) String kitAccountId,
            @ApiParam(name = "drugDetail", value = "药品清单json串")@RequestParam(value = "drugDetail", required = true) String drugDetail) {
        try {
            kitService.useDrugRecord(useTime,normalTime,recordType,useDrugStatus,kitSn,kitAccountId,drugDetail);
            return write(200, "请求成功!");
        } catch (Exception e) {
            e.printStackTrace();
            return error(-1,"请求失败!");
        }
    }
    @ApiOperation("用药提醒")
    @RequestMapping(value = "/drug/useRemindRecord", method = RequestMethod.POST)
    public String synchronousDict(
            @ApiParam(name = "normalTime", value = "计划用药时间 yyyy-MM-dd HH:mm")
            @RequestParam(value = "normalTime", required = true) String normalTime,
            @ApiParam(name = "kitSn", value = "药盒sn码")
            @RequestParam(value = "normalTime", required = true) String kitSn,
            @ApiParam(name = "kitAccountId", value = "药盒账号id")
            @RequestParam(value = "kitAccountId", required = true) String kitAccountId,
            @ApiParam(name = "remindType", value = "提醒类型(1、到点,2、超时,3、漏用)")
            @RequestParam(value = "remindType", required = true) String remindType,
            @ApiParam(name = "drugDetail", value = "药品清单json串")
            @RequestParam(value = "kitAccountId", required = true) String drugDetail) {
        try {
            kitService.drugUseRemind(normalTime,remindType,kitSn,kitAccountId,drugDetail);
            return write(200, "请求成功!");
        } catch (Exception e) {
            return error(-1,"请求失败!");
        }
    }
}

+ 4 - 0
patient-co/patient-co-wlyy/src/main/resources/application-dev.yml

@ -178,3 +178,7 @@ ylz:
  termId: 01
  gateway:
    url: http://www.mstpay.com:1300/huangsb
juye:
  url: http://api.zayata.com/index.php?s=/Company/Device/
  token: YTgzYjc2YWIzZjdjOTA1MTE0ODY2YjcyOGNkYWFmZWR6YXlhdGFjb21wYW55
  companyCode: 86350206000000001

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

@ -152,8 +152,8 @@ es:
jkEdu:
  web:
#    articleBaseUrl: http://yihu.com:9088/
#    articleBaseUrl: http://172.19.103.78:9092/
    articleBaseUrl: http://172.19.103.87:9088/
    articleBaseUrl: http://172.19.103.78:9092/
#    articleBaseUrl: http://172.19.103.87:9088/
#消息队列
activemq:
@ -186,3 +186,8 @@ ylz:
  gateway:
    url: http://www.mstpay.com:1300/huangsb
juye:
#  url: http://api.zayata.com/index.php?s=/Company/Device/
  url: zayata.ocip.net:30080/index.php?s=/Company/Device/
  token: YTgzYjc2YWIzZjdjOTA1MTE0ODY2YjcyOGNkYWFmZWR6YXlhdGFjb21wYW55
  companyCode: 86350206000000001

+ 5 - 0
patient-co/patient-co-wlyy/src/main/resources/application-test.yml

@ -171,3 +171,8 @@ ylz:
  termId: 01
  gateway:
    url: http://www.mstpay.com:1300/huangsb
juye:
#  url: http://api.zayata.com/index.php?s=/Company/Device/
  url: zayata.ocip.net:30080/index.php?s=/Company/Device/
  token: YTgzYjc2YWIzZjdjOTA1MTE0ODY2YjcyOGNkYWFmZWR6YXlhdGFjb21wYW55
  companyCode: 86350206000000001

BIN
patient-co/patient-co-wlyy/src/main/webapp/images/activity.png