Przeglądaj źródła

照护老人列表

吴世龙 2 lat temu
rodzic
commit
e731ec6b45

+ 17 - 4
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/endpoint/statistics/OpenStatisticsEndpoint.java

@ -1,6 +1,5 @@
package com.yihu.jw.care.endpoint.statistics;
package com.yihu.jw.care.endpoint.statistics;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.care.service.assistance.EmergencyAssistanceService;
import com.yihu.jw.care.service.assistance.EmergencyAssistanceService;
@ -18,12 +17,9 @@ import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import io.swagger.annotations.Api;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiParam;
import org.nlpcn.es4sql.jdbc.ObjectResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.*;
import java.util.*;
/**
/**
 * Created with IntelliJ IDEA.
 * Created with IntelliJ IDEA.
 *
 *
@ -458,5 +454,22 @@ public class OpenStatisticsEndpoint extends EnvelopRestEndpoint {
        }
        }
    }
    }
    @GetMapping(value = "findTendOld")
    @ApiOperation(value = "获取照护老人列表")
    public ObjEnvelop findTendOld(@ApiParam(name="page",value = "页码",required = false)
                                       @RequestParam(value = "page",required = true,defaultValue = "1") Integer page,
                                   @ApiParam(name="size",value = "分页大小",required = false)
                                       @RequestParam(value = "size",required = true,defaultValue = "5") Integer size){
        try {
            JSONObject tendOld = statisticsService.findTendOld(page, size);
            return success(tendOld);
        } catch (Exception e) {
            e.printStackTrace();
            return failedObjEnvelopException2(e);
        }
    }
}
}

+ 57 - 0
svr/svr-cloud-care/src/main/java/com/yihu/jw/care/service/statistics/StatisticsService.java

@ -2921,4 +2921,61 @@ public class StatisticsService {
        return result;
        return result;
    }
    }
    /**
     * 获取招呼老人基本信息
     * 签约老人+未签约有设备的
     */
    public JSONObject  findTendOld(Integer page,Integer size){
        String sql = "SELECT DISTINCT p.id AS id,p.`name` AS `name`, p.sex AS sex,CASE WHEN LENGTH( p.idcard )= 18 THEN\n" +
                "\t\tYEAR (\n" +
                "\t\t\tnow()) - YEAR (\n" +
                "\t\tsubstring( p.idcard, 7, 8 )) \n" +
                "\t\tWHEN LENGTH( p.idcard )= 15 THEN\n" +
                "\t\tYEAR (\n" +
                "\t\t\tnow()) - YEAR (\n" +
                "\t\tSTR_TO_DATE( CONCAT( '19', substring( p.idcard, 7, 2 )), '%Y' )) ELSE NULL \n" +
                "\tEND AS age,\n" +
                "\tp.mobile AS mobile,\n" +
                "\tp.address AS address,\n" +
                "\tt.`name` AS orgName,\n" +
                "\tGROUP_CONCAT( DISTINCT d.NAME SEPARATOR ',' ) AS doctorName \n" +
                "FROM base_patient p, base_service_package_sign_record sr, base_service_package_record r,base_service_package_item i, base_service_package pack,base_team t,base_team_member tm,base_doctor d \n" +
                "WHERE sr.id = r.sign_id  AND sr.STATUS = 1 AND r.service_package_id = i.service_package_id  AND r.service_package_id = pack.id  AND i.del = 1  AND sr.`status` = 1  AND CONVERT ( sr.patient USING utf8 ) = p.id \n" +
                "\tAND r.team_code = t.id AND tm.team_code = t.id AND d.id = tm.doctor_code AND p.id NOT IN (SELECT DISTINCT dict_code from wlyy_hospital_sys_dict WHERE (dict_name = 'jkzl_child' or dict_name = 'jkzl_older' \n" +
                "                  or dict_name = 'jkzl_user' or dict_name = 'jkzl_helper'  or dict_name = 'jkzl_teacher' ) and dict_code is not null)\n" +
                "GROUP BY p.idcard UNION SELECT p.id AS id,p.`name` AS `name`, p.sex AS sex,\n" +
                "CASE\n" +
                "\t\tWHEN LENGTH( p.idcard )= 18 THEN\n" +
                "\t\tYEAR (\n" +
                "\t\t\tnow()) - YEAR (\n" +
                "\t\tsubstring( p.idcard, 7, 8 )) \n" +
                "\t\tWHEN LENGTH( p.idcard )= 15 THEN\n" +
                "\t\tYEAR (\n" +
                "\t\t\tnow()) - YEAR (\n" +
                "\t\tSTR_TO_DATE( CONCAT( '19', substring( p.idcard, 7, 2 )), '%Y' )) ELSE NULL \n" +
                "\tEND AS age,\n" +
                "\tp.mobile AS mobile,\n" +
                "\tp.address AS address,\n" +
                "\tp.address AS orgName,\n" +
                "\t'' AS doctorName \n" +
                "FROM base_patient p INNER JOIN wlyy_patient_device d ON p.id = d.`user` \n" +
                "WHERE p.sign_status = 0  AND p.del = 1  AND d.del = 0 AND p.id NOT IN (SELECT DISTINCT dict_code from wlyy_hospital_sys_dict WHERE (dict_name = 'jkzl_child' or dict_name = 'jkzl_older' \n" +
                "                  or dict_name = 'jkzl_user' or dict_name = 'jkzl_helper'  or dict_name = 'jkzl_teacher' ) and dict_code is not null) ORDER BY id\n";
        page = (page-1)*size;
        sql += " limit "+page+","+size+"";
        List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
        JSONObject jsonObject = new JSONObject();
        jsonObject.put("data",list);
        jsonObject.put("oldTotal",list.size());
        return jsonObject;
    }
}
}