JAVA全系列 教程
3762个小节阅读:7094.6k
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
序号 | 接口名称 | 接口地址 | 请求类型 |
---|---|---|---|
1 | 医生工作量统计 | /statistics/workload/queryWorkload | get |
2 | 总体工作量统计 | /statistics/workload/queryWorkloadStat | get |
参数名称 | 是否必须 |
---|---|
beginTime | 否 |
endTime | 否 |
返回JSON数据
名称 | 类型 | 其他信息 |
---|---|---|
msg | String | |
code | int | |
data | object [] | item 类型: object |
├─ regId | String | |
├─ userId | String | |
├─ doctorName | String | |
├─ regAmount | int | |
├─ patientName | String | |
├─ visitDate | String |
创建Workload、WorkloadQueryDto、WorkloadStat
xxxxxxxxxx
package com.bjsxt.domain;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
import java.util.Date;
callSuper=true) (
public class Workload extends BaseEntity {
private String regId;
private String userId;
private String doctorName;
private BigDecimal regAmount;
private String patientName;
private Date visitDate;
}
xxxxxxxxxx
package com.bjsxt.dto;
import io.swagger.annotations.ApiModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
/**
*
*/
value="com-bjsxt-dto-WorkloadQueryDto") (
callSuper = false) (
public class WorkloadQueryDto extends BaseDto{
private String doctorName;
private String queryDate;
}
xxxxxxxxxx
package com.bjsxt.domain;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
callSuper=true) (
public class WorkloadStat extends BaseEntity {
private String userId;
private String doctorName;
private BigDecimal totalAmount;
private Long count;
}
xxxxxxxxxx
package com.bjsxt.mapper;
import com.bjsxt.domain.Workload;
import com.bjsxt.domain.WorkloadStat;
import com.bjsxt.dto.WorkloadQueryDto;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
*
*/
public interface WorkloadMapper {
/**
* 医生工作量统计列表
*
* @param workloadQueryDto
* @return
*/
List<Workload> queryWorkload( ("workload") WorkloadQueryDto workloadQueryDto);
}
WorkLoadMapper.xml
xxxxxxxxxx
<mapper namespace="com.bjsxt.mapper.WorkloadMapper">
<resultMap id="WorkloadBaseResultMap" type="com.bjsxt.domain.Workload">
<result column="registration_id" property="regId" />
<result column="user_id" property="userId" />
<result column="doctor_name" property="doctorName" />
<result column="registration_amount" property="regAmount" />
<result column="patient_name" property="patientName" />
<result column="visit_date" property="visitDate" />
</resultMap>
<resultMap id="WorkloadStatBaseResultMap" type="com.bjsxt.domain.WorkloadStat">
<result column="user_id" property="userId" />
<result column="doctor_name" property="doctorName" />
<result column="total_amount" property="totalAmount" />
<result column="count" property="count" />
</resultMap>
<sql id="Workload_Base_Column_List">
registration_id, user_id,doctor_name,registration_amount,patient_name,visit_date
</sql>
<sql id="WorkloadStat_Base_Column_List">
user_id, doctor_name,total_amount,`count`
</sql>
<!--药品统计列表-->
<select id="queryWorkload" resultMap="WorkloadBaseResultMap">
select <include refid="Workload_Base_Column_List"></include>
from his_registration
<where>
(registration_status='2'or registration_status='3')
<if test="workload.doctorName!=null and workload.doctorName!=''">
and doctor_name like concat("%",#{workload.doctorName},"%")
</if>
<if test="workload.queryDate!=null and workload.queryDate!=''">
and date_format(create_time,'%Y-%m-%d') =#{workload.queryDate}
</if>
<if test="workload.beginTime!=null">
and create_time>=#{workload.beginTime}
</if>
<if test="workload.endTime!=null">
and create_time <![CDATA[<=]]>
#{workload.endTime}
</if>
</where>
</select>
<!--药品数量统计列表-->
<select id="queryWorkloadStat" resultMap="WorkloadStatBaseResultMap">
select user_id,doctor_name,count(1) as 'count',sum(registration_amount) as total_amount
from his_registration
<where>
(registration_status='2'or registration_status='3')
<if test="workload.doctorName!=null and workload.doctorName!=''">
and doctor_name like concat("%",#{workload.doctorName},"%")
</if>
<if test="workload.queryDate!=null and workload.queryDate!=''">
and date_format(create_time,'%Y-%m-%d') =#{workload.queryDate}
</if>
<if test="workload.beginTime!=null">
and create_time>=#{workload.beginTime}
</if>
<if test="workload.endTime!=null">
and create_time <![CDATA[<=]]>
#{workload.endTime}
</if>
</where>
group by user_id,doctor_name
</select>
</mapper>
xxxxxxxxxx
package com.bjsxt.service;
import com.bjsxt.domain.Workload;
import com.bjsxt.domain.WorkloadStat;
import com.bjsxt.dto.WorkloadQueryDto;
import java.util.List;
/**
*
*/
public interface WorkloadService {
/**
* 医生工作量统计列表
* @param workloadQueryDto
* @return
*/
List<Workload> queryWorkload(WorkloadQueryDto workloadQueryDto);
}
xxxxxxxxxx
package com.bjsxt.service.impl;
import com.bjsxt.domain.Workload;
import com.bjsxt.domain.WorkloadStat;
import com.bjsxt.dto.WorkloadQueryDto;
import com.bjsxt.mapper.WorkloadMapper;
import com.bjsxt.service.WorkloadService;
import org.apache.dubbo.config.annotation.Service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
*
*/
public class WorkloadServiceImpl implements WorkloadService {
private WorkloadMapper workloadMapper;
public List<Workload> queryWorkload(WorkloadQueryDto workloadQueryDto) {
return this.workloadMapper.queryWorkload(workloadQueryDto);
}
}
xxxxxxxxxx
package com.bjsxt.controller.statistics;
import ...
/**
*
* 工作量统计控制器
*/
"statistics/workload") (
public class StatWorkloadController {
private WorkloadService workloadService;
/**
* 医生工作量统计列表
*/
"queryWorkload") (
public AjaxResult queryWorkload(WorkloadQueryDto workloadQueryDto){
if(workloadQueryDto.getBeginTime()==null){
workloadQueryDto.setQueryDate(DateUtil.format(DateUtil.date(),"yyyy-MM-dd"));
}
List<Workload> workloadList=this.workloadService.queryWorkload(workloadQueryDto);
return AjaxResult.success(workloadList);
}
}
医生工作量统计/statistics/workload/queryWorkload
参数名称 | 是否必须 |
---|---|
beginTime | 否 |
endTime | 否 |
返回JSON数据
名称 | 类型 | 其他信息 |
---|---|---|
msg | String | |
code | int | |
data | object [] | item 类型: object |
├─ userId | String | |
├─ doctorName | String | |
├─ totalAmount | int | |
├─ count | int |
创建Workload、WorkloadQueryDto、WorkloadStat
创建WorkloadMapper、WorkloadMapper.xml
xxxxxxxxxx
package com.bjsxt.service;
import com.bjsxt.domain.Workload;
import com.bjsxt.domain.WorkloadStat;
import com.bjsxt.dto.WorkloadQueryDto;
import java.util.List;
/**
*
*/
public interface WorkloadService {
/**
* 医生工作量统计列表
* @param workloadQueryDto
* @return
*/
List<Workload> queryWorkload(WorkloadQueryDto workloadQueryDto);
/**
* 总体工作量统计列表
* @param workloadQueryDto
* @return
*/
List<WorkloadStat> queryWorkloadStat(WorkloadQueryDto workloadQueryDto);
}
xxxxxxxxxx
package com.bjsxt.service.impl;
import com.bjsxt.domain.Workload;
import com.bjsxt.domain.WorkloadStat;
import com.bjsxt.dto.WorkloadQueryDto;
import com.bjsxt.mapper.WorkloadMapper;
import com.bjsxt.service.WorkloadService;
import org.apache.dubbo.config.annotation.Service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
*
*/
public class WorkloadServiceImpl implements WorkloadService {
private WorkloadMapper workloadMapper;
public List<Workload> queryWorkload(WorkloadQueryDto workloadQueryDto) {
return this.workloadMapper.queryWorkload(workloadQueryDto);
}
public List<WorkloadStat> queryWorkloadStat(WorkloadQueryDto workloadQueryDto) {
return this.workloadMapper.queryWorkloadStat(workloadQueryDto);
}
}
xxxxxxxxxx
package com.bjsxt.controller.statistics;
import ...
/**
*
* 工作量统计控制器
*/
"statistics/workload") (
public class StatWorkloadController {
private WorkloadService workloadService;
/**
* 医生工作量统计列表
*/
"queryWorkload") (
public AjaxResult queryWorkload(WorkloadQueryDto workloadQueryDto){
if(workloadQueryDto.getBeginTime()==null){
workloadQueryDto.setQueryDate(DateUtil.format(DateUtil.date(),"yyyy-MM-dd"));
}
List<Workload> workloadList=this.workloadService.queryWorkload(workloadQueryDto);
return AjaxResult.success(workloadList);
}
/**
* 总体工作量统计列表
*/
"queryWorkloadStat") (
public AjaxResult queryWorkloadStat(WorkloadQueryDto workloadQueryDto){
if(workloadQueryDto.getBeginTime()==null){
workloadQueryDto.setQueryDate(DateUtil.format(DateUtil.date(),"yyyy-MM-dd"));
}
List<WorkloadStat> workloadList=this.workloadService.queryWorkloadStat(workloadQueryDto);
return AjaxResult.success(workloadList);
}
}
总体工作量统计/statistics/workload/queryWorkloadStat