Browse Source

Merge branch 'dev' of trick9191/patient-co-management into dev

trick9191 7 years ago
parent
commit
55cf76aac0

+ 5 - 2
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/controller/common/account/CustomerController.java

@ -254,14 +254,17 @@ public class CustomerController extends BaseController {
    @RequestMapping(value = "/getCallRecords", method = {RequestMethod.GET, RequestMethod.POST})
    @ApiOperation(value = "获取通讯记录列表")
    public String getCallRecords(@ApiParam(name="callerNumber",value="呼叫人电话")@RequestParam(required = false)String callerNumber,
                                 @ApiParam(name="recipientNumber",value="客服座机电话")@RequestParam(required = false)String recipientNumber,
                                 @ApiParam(name="answerStatus",value="接听状态: 1.接通,2. 队列中放弃,3.未接通")@RequestParam(required = false)Integer answerStatus,
                                 @ApiParam(name="serviceType",value="服务类型:0.医生咨询,1.预约挂号")@RequestParam(required = false)Integer serviceType ,
                                 @ApiParam(name="serviceType",value="服务类型:1.医生转接 2.代理咨询")@RequestParam(required = false)Integer serviceType ,
                                 @ApiParam(name="userName",value="客服名称(模糊匹配)")@RequestParam(required = false)String  userName ,
                                 @ApiParam(name="jobNo",value="客服工号")@RequestParam(required = false)String jobNo ,
                                 @ApiParam(name="startDate",value="开始时间")@RequestParam(required = false)String startDate,
                                 @ApiParam(name="endDate",value="结束时间")@RequestParam(required = false)String endDate,
                                 @ApiParam(name="page",value="第几页,从1开始")@RequestParam(required = true)Integer page,
                                 @ApiParam(name="size",value="页码大小")@RequestParam(required = true)Integer size){
        try {
            return write(200,"查询成功","data",customerService.getCallRecords(callerNumber,answerStatus,serviceType,startDate,endDate,page,size));
            return write(200,"查询成功","data",customerService.getCallRecords(callerNumber,recipientNumber,answerStatus,serviceType,userName,jobNo,startDate,endDate,page,size));
        }catch (Exception e){
            error(e);
            return error(-1,"查询失败");

+ 2 - 0
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/repository/UserDao.java

@ -34,4 +34,6 @@ public interface UserDao extends PagingAndSortingRepository<User, Long>, JpaSpec
    @Query("from User a where a.name like ?1 order by code")
    Page<User> searchUsersByName(String name, Pageable pageRequest);
	User findByJobNo(String jobNo);
}

+ 17 - 5
patient-co-manage/wlyy-manage/src/main/java/com/yihu/wlyy/service/manager/account/CustomerService.java

@ -270,7 +270,7 @@ public class CustomerService extends BaseService{
		return "1";
	}
	public Map<String,Object> getCallRecords(String callerNumber,Integer answerStatus,Integer serviceType ,String startDate,String endDate,Integer page,Integer size){
	public Map<String,Object> getCallRecords(String callerNumber,String recipientNumber, Integer answerStatus,Integer serviceType ,String userName,String jobNo,String startDate,String endDate,Integer page,Integer size){
		Map<String,Object> map = new HashedMap();
@ -279,7 +279,7 @@ public class CustomerService extends BaseService{
				" manage_call_record r " +
				" WHERE " +
				" 1 = 1 ";
		sqltotal = setCallRecordSql( sqltotal, callerNumber, answerStatus, serviceType , startDate, endDate);
		sqltotal = setCallRecordSql( sqltotal, callerNumber,recipientNumber, answerStatus, serviceType ,userName,jobNo, startDate, endDate);
		List<Map<String,Object>> rsTotal = jdbcTemplate.queryForList(sqltotal);
		Long total = (Long)rsTotal.get(0).get("total");
@ -301,12 +301,13 @@ public class CustomerService extends BaseService{
				" r.type AS type, " +
				" r.user_name AS userName, " +
				" r.user_code AS userCode," +
				" r.code" +
				" r.code," +
				" r.service_type AS serviceType" +
				" FROM " +
				" manage_call_record r " +
				" WHERE " +
				" 1 = 1 ";
		sql = setCallRecordSql( sql, callerNumber, answerStatus, serviceType , startDate, endDate);
		sql = setCallRecordSql( sqltotal, callerNumber,recipientNumber, answerStatus, serviceType ,userName,jobNo, startDate, endDate);
		sql += " ORDER BY r.call_time DESC LIMIT "+(page-1)*size+","+size;
		List<Map<String,Object>> rs = jdbcTemplate.queryForList(sql);
@ -319,7 +320,7 @@ public class CustomerService extends BaseService{
		return map;
	}
	public String setCallRecordSql(String sql,String callerNumber,Integer answerStatus,Integer serviceType ,String startDate,String endDate){
	public String setCallRecordSql(String sql,String callerNumber,String recipientNumber,Integer answerStatus,Integer serviceType ,String userName,String jobNo,String startDate,String endDate){
		if(StringUtils.isNotBlank(callerNumber)){
			sql +=" AND r.caller_number = '"+callerNumber+"'";
		}
@ -335,6 +336,17 @@ public class CustomerService extends BaseService{
		if(StringUtils.isNotBlank(endDate)){
			sql +=" AND r.call_time <='"+endDate+" 23:59:59'";
		}
		if(StringUtils.isNotBlank(userName)){
			sql +=" AND r.user_name LIKE '%"+userName+" %'";
		}
		if(StringUtils.isNotBlank(jobNo)){
			User u = userDao.findByJobNo(jobNo);
			sql +=" AND r.user_code = '"+u.getCode()+"'";
		}
		if(StringUtils.isNotBlank(recipientNumber)){
			sql +=" AND r.recipient_number = '"+recipientNumber+" '";
		}
		return sql;
	}

+ 62 - 5
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/prescription/PrescriptionExpressageService.java

@ -470,9 +470,10 @@ public class PrescriptionExpressageService extends BaseService {
        return rs;
    }
    public List<Map<String, Object>> getEsListByIDCardOrSSC(String keyWord, Integer page, Integer pageSize) {
    public Map<String, Object> getEsListByIDCardOrSSC(String keyWord, Integer page, Integer pageSize) {
        Patient p = null;
        Map<String,Object> map = new HashedMap();
        if (StringUtils.isNotBlank(keyWord)) {
            p = patientDao.findByIdcard(keyWord);
            if (p == null) {
@ -480,6 +481,26 @@ public class PrescriptionExpressageService extends BaseService {
            }
            if (p != null) {
                int start = (page - 1) * pageSize;
                String sqlTotal ="SELECT count(1) AS total" +
                        " FROM " +
                        " wlyy_prescription p " +
                        " JOIN wlyy_prescription_pay py ON py.prescription_code = p.`code` " +
                        " WHERE " +
                        " p.patient = '" + p.getCode() + "' " +
                        " AND p.`status`>=50 " +
                        " ORDER BY p.`status` ASC ";
                List<Map<String, Object>> totallist = jdbcTemplate.queryForList(sqlTotal);
                Long total = (Long)totallist.get(0).get("total");
                if(total==0){
                    map.put("list",null);
                    map.put("page",page);
                    map.put("total",0);
                    map.put("records",0);
                    return map;
                }
                String sql = "SELECT " +
                        "  py.charge_no AS chargeNo, " +
                        "  p.patient_name AS patientName, " +
@ -497,10 +518,17 @@ public class PrescriptionExpressageService extends BaseService {
                        " ORDER BY p.`status` ASC " +
                        " LIMIT " + start + "," + pageSize;
                List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
                return list;
                map.put("page",page);
                map.put("records",total);
                map.put("list",list);
                double t = (double)total;
                map.put("total",Math.ceil(t/pageSize));
                return map;
            }
        }
        return null;
        return map;
    }
    public String saveDrugDelivery(String doctor, String prescriptionCode, String reasonCode, String reasonName, String reason) {
@ -578,7 +606,29 @@ public class PrescriptionExpressageService extends BaseService {
        return rs;
    }
    public List<Map<String, Object>> getPresEsPayList(String keyWord, String state, String type, String startDate, String endDate, String operator,String flag,Integer page, Integer pageSize) {
    public Map<String, Object> getPresEsPayList(String keyWord, String state, String type, String startDate, String endDate, String operator,String flag,Integer page, Integer pageSize) {
        Map<String, Object> map = new HashedMap();
        String totalSql = "SELECT count(1) AS total " +
                " FROM " +
                " wlyy_prescription p " +
                " JOIN wlyy_prescription_pay py ON py.prescription_code = p.`code` " +
                " WHERE" +
                " 1=1 ";
        totalSql = setSQL( totalSql,keyWord,state,type,startDate,endDate,operator,flag);
        totalSql +=  " AND p.`status`>=50 ";
        List<Map<String, Object>> totallist = jdbcTemplate.queryForList(totalSql);
        Long total = (Long)totallist.get(0).get("total");
        if(total==0){
            map.put("list",null);
            map.put("page",page);
            map.put("total",0);
            map.put("records",0);
            return map;
        }
        int start = (page - 1) * pageSize;
        String sql = "SELECT " +
                "  py.charge_no AS chargeNo, " +
@ -601,7 +651,14 @@ public class PrescriptionExpressageService extends BaseService {
                " ORDER BY py.create_time DESC " +
                " LIMIT " + start + "," + pageSize;
        List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
        return list;
        map.put("page",page);
        map.put("records",total);
        map.put("list",list);
        double t = (double)total;
        map.put("total",Math.ceil(t/pageSize));
        return map;
    }
    public String setSQL(String sql,String keyWord, String state, String type, String startDate, String endDate,String operator,String flag){