Bläddra i källkod

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

liuwenbin 7 år sedan
förälder
incheckning
68c882c754
15 ändrade filer med 171 tillägg och 84 borttagningar
  1. 2 1
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/manager/datastatic/PayLogController.java
  2. 4 2
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/service/httplog/PayLogService.java
  3. 2 2
      patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/service/manager/device/WlyyDeviceService.java
  4. 3 0
      patient-co-manage/wlyy-manage/src/main/webapp/WEB-INF/views/static/pay_log_list.jsp
  5. 13 0
      patient-co-manage/wlyy-manage/src/main/webapp/WEB-INF/views/static/pay_log_list_js.jsp
  6. 1 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/DoctorInterceptor.java
  7. 1 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/doctor/DoctorAdminTeamMemberDao.java
  8. 1 0
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/specialist/SpecialDiseaseDao.java
  9. 1 1
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/sign/SignWebService.java
  10. 3 3
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/team/AdminTeamService.java
  11. 13 11
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/specialist/SpecialistService.java
  12. 122 50
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/data/DataHandingService.java
  13. 2 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/data/DataHandlingController.java
  14. 1 8
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/consult/DoctorConsultController.java
  15. 2 2
      patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/wechat/process/WeiXinEventProcess.java

+ 2 - 1
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/manager/datastatic/PayLogController.java

@ -38,10 +38,11 @@ public class PayLogController extends BaseController {
            @RequestParam(value = "params",required = false) String params,
            @RequestParam(value = "startDate",required = false) String startDate,
            @RequestParam(value = "endDate",required = false) String endDate,
            @RequestParam(value = "status",required = false) String status,
            @RequestParam(value = "page",required = false) Integer page,
            @RequestParam(value = "rows",required = false) Integer pageSize){
        try{
            Page<PayLog> payLogs = payLogService.searchList(params,startDate, endDate, page, pageSize);
            Page<PayLog> payLogs = payLogService.searchList(params,startDate, endDate, status, page, pageSize);
            return write(200,"操作成功",page,pageSize,payLogs);
        }catch (Exception ex){
            error(ex);

+ 4 - 2
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/service/httplog/PayLogService.java

@ -27,7 +27,7 @@ public class PayLogService extends BaseJpaService<PayLog,PayLogDao> {
    @Autowired
    private JdbcTemplate jdbcTemplate;
    public Page<PayLog> searchList(String params, String startDate, String endDate, Integer page, Integer pageSize) throws Exception{
    public Page<PayLog> searchList(String params, String startDate, String endDate, String status, Integer page, Integer pageSize) throws Exception{
        List<PayLog> payLogList = new ArrayList<>();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        if(page == null){
@ -49,7 +49,9 @@ public class PayLogService extends BaseJpaService<PayLog,PayLogDao> {
        if(!StringUtils.isEmpty(endDate)){
            filters.append("and create_time < '"+endDate+"' ");
        }
        if(!StringUtils.isEmpty(status)){
            filters.append("and status = '"+status+"' ");
        }
        payLogList = jdbcTemplate.query(sql+filters.toString()+" order by p.create_time desc"+" limit "+(page-1)*pageSize+","+pageSize, new BeanPropertyRowMapper<>(PayLog.class));
        if(payLogList.size()<=0){
            return new PageImpl<PayLog>(new ArrayList<>(), pageRequest, 0);

+ 2 - 2
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/service/manager/device/WlyyDeviceService.java

@ -176,14 +176,14 @@ public class WlyyDeviceService {
            //判断设备厂商是否存在,不存在则存入
            if(StringUtils.isNotBlank(device.getManufacturerId())) {
                DeviceManufacturer manufacturer = deviceManufacturerDao.findByCode(device.getManufacturerId());
                if (manufacturer == null) {
                if (manufacturer == null && StringUtils.isNotBlank(device.getManufacturerCode()) && StringUtils.isNotBlank(device.getManufacturer())) {
                    manufacturer = new DeviceManufacturer();
                    manufacturer.setCode(device.getManufacturerId());
                    manufacturer.setManufacturerCode(device.getManufacturerCode());
                    manufacturer.setManufacturerName(device.getManufacturer());
                    manufacturer.setCzrq(new Date());
                    deviceManufacturerDao.save(manufacturer);
                }else {
                }else if(manufacturer != null){
                    device.setManufacturerCode(manufacturer.getManufacturerCode());
                    device.setManufacturer(manufacturer.getManufacturerName());
                }

+ 3 - 0
patient-co-manage/wlyy-manage/src/main/webapp/WEB-INF/views/static/pay_log_list.jsp

@ -26,6 +26,9 @@
            <div class="m-form-control f-ml15">
                <input type="text" id="inp_endDate" placeholder="请输入查询结束日期" class="f-ml10" data-attr-scan="endDate"/>
            </div>
            <div class="m-form-control f-ml15">
                <input type="text" id="inp_status" placeholder="请输入状态" class="f-ml10" data-attr-scan="status"/>
            </div>
            <sec:authorize url="/admin/paylog/list">
                <div id="btn_search" class="l-button u-btn u-btn-primary u-btn-small f-ib f-vam  f-ml10" >
                    <span>查询</span>

+ 13 - 0
patient-co-manage/wlyy-manage/src/main/webapp/WEB-INF/views/static/pay_log_list_js.jsp

@ -40,6 +40,7 @@
                $params: $("#inp_params"),//参数
                $startDate: $("#inp_startDate"),
                $endDate: $("#inp_endDate"),
                $status: $("#inp_status"),
                init: function () {
                    this.$element.show();
                    this.$element.attrScan();
@ -59,6 +60,17 @@
                        labelAlign: 'center',
                        cancelable: true
                    });
                    this.statusBox = this.$status.ligerComboBox({
                        width: 150,
                        data: [
                            {text: '失败', statusId: '0'},
                            {text: '成功', statusId: '1'},
                            {text: '已重试', statusId: '2'}
                        ],
                        initIsTriggerEvent: false,
                        valueField: 'statusId',
                    });
                    $("#inp_startDate").val(date);
                    this.bindEvents();
                },
@ -144,6 +156,7 @@
                reloadGrid: function (msg) {
                    retrieve.$element.attrScan();
                    var values = retrieve.$element.Fields.getValues();
                    values.status = retrieve.statusBox.getValue();
                    reloadGrid.call(this, values);
                },
            };

+ 1 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/interceptors/DoctorInterceptor.java

@ -125,7 +125,7 @@ public class DoctorInterceptor extends BaseInterceptor {
            }
            Token token = null;
            Map<String, Token> tempMap = null;
            //Map<String, Token> tempMap = null;
            //1.50 登录缓存存储为redis
            if (platform == 2) {

+ 1 - 1
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/doctor/DoctorAdminTeamMemberDao.java

@ -36,7 +36,7 @@ public interface DoctorAdminTeamMemberDao extends
            "AND m.doctorCode = d.code AND t.available = true AND m.available = true ORDER BY d.level")
    List<Doctor> findAllMembers(@Param(value = "teamId") long teamId);
    @Query("SELECT d,m.available as available FROM AdminTeamMember m, AdminTeam t, Doctor d WHERE t.id = :teamId AND t.id = m.teamId " +
    @Query("SELECT distinct m.doctorCode,d,m.available as available FROM AdminTeamMember m, AdminTeam t, Doctor d WHERE t.id = :teamId AND t.id = m.teamId " +
            "AND m.doctorCode = d.code AND t.available = true ORDER BY d.level")
    List<Object[]> findMembers(@Param(value = "teamId") long teamId);

+ 1 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/repository/specialist/SpecialDiseaseDao.java

@ -12,6 +12,7 @@ import java.util.List;
 */
public interface SpecialDiseaseDao extends PagingAndSortingRepository<SpecialDisease, Long>, JpaSpecificationExecutor<SpecialDisease> {
    @Query("from SpecialDisease where code=?1 and del=1")
    SpecialDisease findByCode(String code);
    List<SpecialDisease> findByDel(String del);

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

@ -395,7 +395,7 @@ public class SignWebService extends BaseService {
                    "  (doctor = '"+doctor+"' or doctor_health = '"+doctor+"') " +
                    " AND STATUS > 0 " +
                    " AND type = 2 " +
                    " AND expenses_status = '0'  " +
                    " AND (expenses_status = '0' or expenses_status = '3')  " +
                    " ) AS waitPayCount, " +
                    "( " +
                    " SELECT " +

+ 3 - 3
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/team/AdminTeamService.java

@ -442,9 +442,9 @@ public class AdminTeamService extends BaseService {
        int count = 0;
        members = memberDao.findMembers(teamId);
        for(Object[] member : members){
            Object[] obj = new Object[member.length + 1];
            System.arraycopy(member, 0, obj, 0, member.length);
            Doctor d = (Doctor) member[0];
            Object[] obj = new Object[member.length ];
            System.arraycopy(member, 1, obj, 0, member.length-1);
            Doctor d = (Doctor) member[1];
            count = signFamilyDao.countByAdminTeamId(teamId, d.getCode());
            obj[obj.length - 1] = count;
            list.add(obj);

+ 13 - 11
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/specialist/SpecialistService.java

@ -472,17 +472,19 @@ public class SpecialistService extends BaseService {
                String[] str = disease.split(",");
                for (String ds : str) {
                    SpecialDisease dis = specialDiseaseDao.findByCode(ds);
                    // 保存居民病种
                    PatientDiseaseServer server = new PatientDiseaseServer();
                    server.setCode(getCode());
                    server.setDel("1");
                    server.setSpecialistRelationCode(rs.getString("obj"));
                    server.setPatient(patient);
                    server.setPatientName(p.getName());
                    server.setDisease(dis.getCode());
                    server.setDiseaseName(dis.getName());
                    server.setCreateTime(new Date());
                    patientDiseaseServerDao.save(server);
                    if(dis!=null){
                        // 保存居民病种
                        PatientDiseaseServer server = new PatientDiseaseServer();
                        server.setCode(getCode());
                        server.setDel("1");
                        server.setSpecialistRelationCode(rs.getString("obj"));
                        server.setPatient(patient);
                        server.setPatientName(p.getName());
                        server.setDisease(dis.getCode());
                        server.setDiseaseName(dis.getName());
                        server.setCreateTime(new Date());
                        patientDiseaseServerDao.save(server);
                    }
                }
                // 添加签约申请消息
                Message message = new Message();

+ 122 - 50
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/data/DataHandingService.java

@ -10,18 +10,21 @@ import com.yihu.wlyy.entity.device.PatientDeviceLog;
import com.yihu.wlyy.entity.doctor.profile.Doctor;
import com.yihu.wlyy.entity.manage.User;
import com.yihu.wlyy.entity.patient.Patient;
import com.yihu.wlyy.entity.patient.SignFamily;
import com.yihu.wlyy.health.repository.DeviceDetailDao;
import com.yihu.wlyy.repository.doctor.DoctorDao;
import com.yihu.wlyy.repository.manage.UserDao;
import com.yihu.wlyy.repository.patient.PatientDao;
import com.yihu.wlyy.repository.patient.PatientDeviceDao;
import com.yihu.wlyy.repository.patient.PatientDeviceLogDao;
import com.yihu.wlyy.repository.patient.SignFamilyDao;
import com.yihu.wlyy.service.app.device.DeviceDetailService;
import com.yihu.wlyy.service.app.device.PatientDeviceService;
import com.yihu.wlyy.service.app.health.bank.CreditLogService;
import com.yihu.wlyy.util.*;
import net.sf.json.JSONArray;
import org.apache.commons.collections.map.HashedMap;
import org.apache.commons.lang.StringEscapeUtils;
import org.json.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -67,6 +70,8 @@ public class DataHandingService {
    private CreditLogService creditLogService;
    @Autowired
    private DeviceDetailDao deviceDetailDao;
    @Autowired
    private SignFamilyDao signFamilyDao;
    @Transactional
    public String producePatientAndDoctorPassword() {
@ -298,28 +303,33 @@ public class DataHandingService {
    public boolean updateDeviceDefalut(){
        boolean flag = true;
        try{
            String deviceSql = "SELECT wd.*,dd.category_code,dd.is_multi_user FROM device.wlyy_devices wd LEFT JOIN wlyy.dm_device dd ON wd.device_model = dd.model";
            //String deviceSql = "SELECT wd.*,dd.category_code,dd.is_multi_user FROM device.wlyy_devices wd LEFT JOIN wlyy.dm_device dd ON wd.device_model = dd.model";
            String deviceSql ="SELECT wd.*,dd.category_code,dd.is_multi_user FROM device.wlyy_devices wd LEFT JOIN wlyy.dm_device dd ON wd.device_model = dd.model where dd.category_code IN(1,2) AND (wd.binding_count IS NULL OR wd.binding_count='' OR wd.binding_count='null')";
            List<Map<String,Object>> deviceDetailList = jdbcTemplate.queryForList(deviceSql);
            //把wlyy_devices库里bindCount先补充默认值
            List<String> deviceSqlList = new ArrayList<>();
            for (Map<String,Object> deviceMap : deviceDetailList){
                String bindingCount="";
                if (StringUtils.isEmpty(String.valueOf(deviceMap.get("binding_count"))) || StringUtils.pathEquals("null",String.valueOf(deviceMap.get("binding_count")))){
                    if (org.apache.commons.lang3.StringUtils.isNotEmpty(String.valueOf(deviceMap.get("is_multi_user"))) && StringUtils.pathEquals("0",String.valueOf(deviceMap.get("is_multi_user")))){
               /* if (StringUtils.isEmpty(String.valueOf(deviceMap.get("binding_count"))) || StringUtils.pathEquals("null",String.valueOf(deviceMap.get("binding_count")))){
                    }*/
                if (org.apache.commons.lang3.StringUtils.isNotEmpty(String.valueOf(deviceMap.get("is_multi_user"))) && StringUtils.pathEquals("0",String.valueOf(deviceMap.get("is_multi_user")))){
                    bindingCount="{\"1\":\"0\"}";
                }else if (org.apache.commons.lang3.StringUtils.isNotEmpty(String.valueOf(deviceMap.get("is_multi_user"))) && StringUtils.pathEquals("1",String.valueOf(deviceMap.get("is_multi_user")))){
                    bindingCount="{\"1\":\"0\",\"2\":\"0\"}";
                }else if (StringUtils.isEmpty(String.valueOf(deviceMap.get("is_multi_user"))) || StringUtils.pathEquals("null",String.valueOf(deviceMap.get("is_multi_user")))){
                    if (String.valueOf(deviceMap.get("device_name")).contains("血糖")){
                        bindingCount="{\"1\":\"0\"}";
                    }else if (org.apache.commons.lang3.StringUtils.isNotEmpty(String.valueOf(deviceMap.get("is_multi_user"))) && StringUtils.pathEquals("1",String.valueOf(deviceMap.get("is_multi_user")))){
                    }
                    if (String.valueOf(deviceMap.get("device_name")).contains("血压")){
                        bindingCount="{\"1\":\"0\",\"2\":\"0\"}";
                    }
                    if (StringUtils.isEmpty(String.valueOf(deviceMap.get("device_name")))){
                        bindingCount="{\"1\":\"0\",\"2\":\"0\"}";
                    }else if (StringUtils.isEmpty(String.valueOf(deviceMap.get("is_multi_user"))) || StringUtils.pathEquals("null",String.valueOf(deviceMap.get("is_multi_user")))){
                        if (String.valueOf(deviceMap.get("device_name")).contains("血糖")){
                            bindingCount="{\"1\":\"0\"}";
                        }
                        if (String.valueOf(deviceMap.get("device_name")).contains("血压")){
                            bindingCount="{\"1\":\"0\",\"2\":\"0\"}";
                        }
                    }
                    //String updateDeviceSql = ;
                    deviceSqlList.add("UPDATE device.wlyy_devices SET binding_count='"+bindingCount +"' where device_code='"+String.valueOf(deviceMap.get("device_code"))+"'");
                }
                //String updateDeviceSql = ;
                deviceSqlList.add("UPDATE device.wlyy_devices SET binding_count='"+bindingCount +"' where device_code='"+String.valueOf(deviceMap.get("device_code"))+"'");
            }
            if (deviceSqlList.size()>0){
                String deviceStr[] = new String[deviceSqlList.size()];
@ -329,24 +339,28 @@ public class DataHandingService {
            //更新grant_org_code字段
            List<String> deviceNoCodeSqlList = new ArrayList<>();
            String orgCodeSql = "SELECT * FROM device.wlyy_devices WHERE grant_org_code IS NULL OR grant_org_code =''";
            String orgCodeSql = "SELECT * FROM device.wlyy_devices WHERE grant_org_code IS NULL OR grant_org_code ='' OR grant_org_code='null'";
            List<DeviceDetail> noOrgList = jdbcTemplate.query(orgCodeSql,new BeanPropertyRowMapper<>(DeviceDetail.class));
            if (noOrgList!=null && noOrgList.size()>0){
                for (DeviceDetail deviceDetail:noOrgList){
                    String orgCode = "";
                    if (deviceDetail.getOrgName().contains("嵩屿")){
                        orgCode = "3502050100";
                    }
                    if (deviceDetail.getOrgName().contains("石塘")){
                        orgCode = "3502050200";
                    }
                    if (deviceDetail.getOrgName().contains("东孚")){
                        orgCode = "3502050300";
                    }
                    if (deviceDetail.getOrgName().contains("新阳")){
                        orgCode = "3502050400";
                    if (!StringUtils.isEmpty(deviceDetail.getOrgName())){
                        if (deviceDetail.getOrgName().contains("嵩屿")){
                            orgCode = "3502050100";
                        }
                        if (deviceDetail.getOrgName().contains("石塘")){
                            orgCode = "3502050200";
                        }
                        if (deviceDetail.getOrgName().contains("东孚")){
                            orgCode = "3502050300";
                        }
                        if (deviceDetail.getOrgName().contains("新阳")){
                            orgCode = "3502050400";
                        }
                        if (org.apache.commons.lang3.StringUtils.isNotBlank(orgCode)){
                            deviceNoCodeSqlList.add("UPDATE device.wlyy_devices SET grant_org_code='"+orgCode+"' where id='"+deviceDetail.getId()+"'");
                        }
                    }
                    deviceNoCodeSqlList.add("UPDATE device.wlyy_devices SET grant_org_code='"+orgCode+"' where id='"+deviceDetail.getId()+"'");
                }
                if (deviceNoCodeSqlList.size()>0){
                    String deviceNoCodeStr[] = new String[deviceNoCodeSqlList.size()];
@ -364,7 +378,7 @@ public class DataHandingService {
    @Transactional(rollbackFor = Exception.class)
    public void updateDevice()throws Exception{
        //String patientDeviceSql = "SELECT pd.*,sf.admin_team_code,sf.hospital FROM wlyy_patient_device pd LEFT JOIN wlyy_sign_family sf ON pd.`user` = sf.patient where sf.`status`>0 GROUP BY pd.id";
        String patientDeviceSql = "SELECT pd.id,pd.device_id AS deviceId,pd.category_code categoryCode,pd.device_name deviceName,pd.device_sn deviceSn,pd.`user`,pd.user_type userType,pd.czrq,sf.admin_team_code,sf.hospital,sf.hospital_name orgName FROM wlyy_patient_device pd LEFT JOIN wlyy_sign_family sf ON pd.`user` = sf.patient where sf.`status`>0 GROUP BY pd.id";
        String patientDeviceSql = "SELECT pd.id,pd.device_id AS deviceId,pd.category_code categoryCode,pd.device_name deviceName,pd.device_sn deviceSn,pd.`user`,pd.user_type userType,pd.czrq FROM wlyy_patient_device pd where pd.category_code in(1,2) GROUP BY pd.id";
        List<Map<String,Object>> patientDeviceList = jdbcTemplate.queryForList(patientDeviceSql);
        String deviceSql = "SELECT * FROM device.wlyy_devices";
        List<DeviceDetail> deviceDetailList = jdbcTemplate.query(deviceSql,new BeanPropertyRowMapper<>(DeviceDetail.class));
@ -405,36 +419,64 @@ public class DataHandingService {
                if (deviceDetail.getDeviceCode().equals(deviceSn)){
                    i++;
                }
            }
            //判断wlyy_device里的bindCount是否正确 正确无需更新
            DeviceDetail deviceDetail = deviceDetailDao.findBySn(deviceSn);
            int count = 0;
            if (deviceDetail!=null && org.apache.commons.lang3.StringUtils.isNotBlank(deviceDetail.getBindingCount())){
                JSONObject jsonObject = new JSONObject(deviceDetail.getBindingCount());
                Iterator iterator = jsonObject.keys();
                while(iterator.hasNext()) {
                    count += jsonObject.getInt((String) iterator.next());
                }
            }
            PatientDevice patientDevice = MapListUtils.convertMap2Bean(patientDeviceMap,PatientDevice.class);
            if (i==1){
                List<String> userTypeList = map.get(patientDevice.getDeviceSn());
                String bindCount = "";
                int size = userTypeList.size();
                if (size==1){
                    if (Integer.valueOf(patientDevice.getUserType())>0 && Integer.valueOf(patientDevice.getUserType())==1){
                        bindCount = "{\"1\":\"1\",\"2\":\"0\"}";
                    }else if (Integer.valueOf(patientDevice.getUserType())>0 && Integer.valueOf(patientDevice.getUserType())==2){
                        bindCount = "{\"1\":\"0\",\"2\":\"1\"}";
                    }else if (Integer.valueOf(patientDevice.getUserType())<0){
                        bindCount = "{\"1\":\"1\"}";
                    }
                }else if (size>1){
                    if (Integer.valueOf(patientDevice.getUserType())>0){
                        bindCount = "{\"1\":\"1\",\"2\":\"1\"}";
                    }else if (Integer.valueOf(patientDevice.getUserType())<0){
                        bindCount = "{\"1\":\"2\"}";
            if (count!=i){
                if (i==1){
                    List<String> userTypeList = map.get(patientDevice.getDeviceSn());
                    String bindCount = "";
                    int size = userTypeList.size();
                    if (size==1){
                        if (Integer.valueOf(patientDevice.getUserType())>0 && Integer.valueOf(patientDevice.getUserType())==1){
                            bindCount = "{\"1\":\"1\",\"2\":\"0\"}";
                        }else if (Integer.valueOf(patientDevice.getUserType())>0 && Integer.valueOf(patientDevice.getUserType())==2){
                            bindCount = "{\"1\":\"0\",\"2\":\"1\"}";
                        }else if (Integer.valueOf(patientDevice.getUserType())<0){
                            bindCount = "{\"1\":\"1\"}";
                        }
                    }else if (size>1){
                        if (Integer.valueOf(patientDevice.getUserType())>0){
                            bindCount = "{\"1\":\"1\",\"2\":\"1\"}";
                        }else if (Integer.valueOf(patientDevice.getUserType())<0){
                            bindCount = "{\"1\":\"2\"}";
                        }
                    }
                   /* String sql = "UPDATE device.wlyy_devices SET is_grant=1,grant_admin_team='"+String.valueOf(patientDeviceMap.get
                            ("admin_team_code"))+"',grant_org_code='"+String.valueOf(patientDeviceMap.get("hospital"))+"',is_binding="+size+",binding_count='"+bindCount
                            +"',grant_time='"+DateUtil.dateToStr(patientDevice.getCzrq(),"yyyy-MM-dd HH:mm:ss")+"',org_name='"+String.valueOf(patientDeviceMap.get("orgName"))+"' where device_code='"+patientDevice.getDeviceSn()+"'";
                    sqlList.add(sql);*/
                    String sql = "UPDATE device.wlyy_devices SET is_grant=1,is_binding="+size+",binding_count='"+bindCount
                            +"',grant_time='"+DateUtil.dateToStr(patientDevice.getCzrq(),"yyyy-MM-dd HH:mm:ss")+"' where device_code='"+patientDevice.getDeviceSn()+"'";
                    sqlList.add(sql);
                }
                String sql = "UPDATE device.wlyy_devices SET is_grant=1,grant_admin_team='"+String.valueOf(patientDeviceMap.get
                        ("admin_team_code"))+"',grant_org_code='"+String.valueOf(patientDeviceMap.get("hospital"))+"',is_binding="+size+",binding_count='"+bindCount
                        +"',grant_time='"+DateUtil.dateToStr(patientDevice.getCzrq(),"yyyy-MM-dd HH:mm:ss")+"',org_name='"+String.valueOf(patientDeviceMap.get("orgName"))+"' where device_code='"+patientDevice.getDeviceSn()+"'";
                sqlList.add(sql);
            }
            //如果wlyy_devices表里没有对应的数据 则增加一条。
            if (i==0){
                String bindCount = "";
                String user= String.valueOf(patientDeviceMap.get("user"));
                SignFamily signFamily = signFamilyDao.findByPatient(user);
                if (signFamily==null && signFamilyDao.findLastJySignByPatient(user,2)!=null){
                    signFamily = signFamilyDao.findLastJySignByPatient(user,2).get(0);
                }
                String adminTeam="";
                String orgName ="";
                String orCode ="";
                if (signFamily!=null){
                    adminTeam=String.valueOf(signFamily.getAdminTeamId());
                    orgName = signFamily.getHospitalName();
                    orCode = signFamily.getHospital();
                }
                if (Integer.valueOf(patientDevice.getUserType())>0 && Integer.valueOf(patientDevice.getUserType())==1){
                    bindCount = "{\"1\":\"1\",\"2\":\"0\"}";
                }else if (Integer.valueOf(patientDevice.getUserType())>0 && Integer.valueOf(patientDevice.getUserType())==2){
@ -442,12 +484,42 @@ public class DataHandingService {
                }else if (Integer.valueOf(patientDevice.getUserType())<0){
                    bindCount = "{\"1\":\"1\"}";
                }
                deviceDetailService.insertDevice(patientDevice,String.valueOf(patientDeviceMap.get("admin_team_code")),String.valueOf(patientDeviceMap.get("hospital_name")),String.valueOf(patientDeviceMap.get("hospital")),bindCount,1);
                deviceDetailService.insertDevice(patientDevice,adminTeam,orgName,orCode,bindCount,1);
            }
        }
        String[] sqlStr = new String[sqlList.size()];
        sqlStr = sqlList.toArray(sqlStr);
        jdbcTemplate.batchUpdate(sqlStr);
        //更新wlyy_device里的org_name grant_org_code grant_admin_team
        List<String> uSqlList = new ArrayList<>();
        //String noBindSql ="SELECT * FROM device.`wlyy_devices` WHERE (grant_admin_team IS NULL OR grant_admin_team ='' OR grant_admin_team='null' OR grant_org_code IS NULL OR grant_org_code='' OR grant_org_code='null' OR grant_org_code='' OR org_name IS NULL OR org_name= '' OR org_name='null')  AND is_binding>0";
        String noBindSql ="SELECT * FROM device.`wlyy_devices` WHERE (grant_admin_team IS NULL OR grant_admin_team ='' OR grant_admin_team='null' OR grant_org_code IS NULL OR grant_org_code='' OR grant_org_code='null' OR grant_org_code='')  AND is_binding>0";
        List<DeviceDetail> noBindDeviceList = jdbcTemplate.query(noBindSql,new BeanPropertyRowMapper<>(DeviceDetail.class));
        for (DeviceDetail deviceDetail: noBindDeviceList){
            for (Map<String,Object> map1:patientDeviceList){
                String deviceSn = String.valueOf(map1.get("deviceSn"));
                if (deviceDetail.getDeviceCode().equals(deviceSn)){
                    SignFamily signFamily = signFamilyDao.findByPatient(String.valueOf(map1.get("user")));
                    if (signFamily==null){
                        List<SignFamily> signFamilyList = signFamilyDao.findLastJySignByPatient(String.valueOf(map1.get("user")),2);
                        if (signFamilyList!=null && signFamilyList.size()>0){
                            signFamily = signFamilyDao.findLastJySignByPatient(String.valueOf(map1.get("user")),2).get(0);
                        }
                    }
                    if (signFamily!=null){
                        String sql = "UPDATE device.wlyy_devices SET is_grant=1,grant_admin_team='"+signFamily.getAdminTeamId()+"',grant_org_code='"+signFamily.getHospital()+"',is_binding=1 ,org_name='"+signFamily.getHospitalName()+"' where device_code='"+deviceSn+"'";
                        uSqlList.add(sql);
                    }
                }
            }
        }
        String[] uSqlStr = new String[uSqlList.size()];
        uSqlStr = uSqlList.toArray(uSqlStr);
        jdbcTemplate.batchUpdate(uSqlStr);
    }
    public void addPointOldDeviceBind()throws Exception{

+ 2 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/data/DataHandlingController.java

@ -302,9 +302,9 @@ public class DataHandlingController extends BaseController {
    public String updateDevice(){
        try {
            boolean flag = dataHandingService.updateDeviceDefalut();
            /*if (flag){
            if (flag){
                dataHandingService.updateDevice();
            }*/
            }
            return write(200,"清洗数据成功!");
        }catch (Exception e){
            e.printStackTrace();

+ 1 - 8
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/consult/DoctorConsultController.java

@ -1223,16 +1223,10 @@ public class DoctorConsultController extends WeixinBaseController {
                                   @ApiParam(name = "sessionId", value = "会话id", defaultValue = "")
                                   @RequestParam(value = "sessionId", required = true) String sessionId,
                                   @ApiParam(name = "businessType", value = "businessType", defaultValue = "1")
                                   @RequestParam(value = "businessType", required = true) String businessType,
                                   @ApiParam(name = "specialdoctor", value = "专科医生CODE", defaultValue = "")
                                   @RequestParam(value = "specialdoctor", required = true) String specialdoctor,
                                   @ApiParam(name = "familydoctor", value = "家庭医生CODE", defaultValue = "")
                                   @RequestParam(value = "familydoctor", required = true) String familydoctor){
                                   @RequestParam(value = "businessType", required = true) String businessType){
        try {
            String doctorCode = getUID();
            Doctor doctor = doctorService.findDoctorByCode(doctorCode);
            //判断居民家庭医生专科是否有共管关系
            int count= consultTeamService.getSpecialDoctorFamilyDoctorPatientCount(patient,specialdoctor,familydoctor);
            Patient p = patientService.findByCode(patient);
            com.alibaba.fastjson.JSONObject content = new com.alibaba.fastjson.JSONObject();
@ -1241,7 +1235,6 @@ public class DoctorConsultController extends WeixinBaseController {
            content.put("photo",p.getPhoto());
            content.put("age",IdCardUtil.getAgeForIdcard(p.getIdcard()));
            content.put("sex",IdCardUtil.getSexForIdcard(p.getIdcard()));
            content.put("count",count);//大于0的就有共管关系
            SignFamily signFamily = signFamilyDao.findByPatient(patient);
            if(signFamily!=null){
                content.put("hospitalName",signFamily.getHospitalName());

+ 2 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/wechat/process/WeiXinEventProcess.java

@ -883,8 +883,8 @@ public class WeiXinEventProcess {
        Map<String, String> articleConsult = new HashMap<>();
        articleConsult.put("Url", url);
        articleConsult.put("Title", "您有一个开通专科服务的邀请,点击查看");
        articleConsult.put("Description", "家庭医生协助专科医生团队为您提供专项服务");
        articleConsult.put("Title", "您正在申请开通专科服务,点击查看");
        articleConsult.put("Description", "共同为您提供健康管理保障");
        articleConsult.put("PicUrl", imgWebapp.getSpecialist_sign_url());
        articles.add(articleConsult);