Commit f52b828f1d36bdc6cab0daf4583fa3d8429382dc
1 parent
273d3891e1
Exists in
master
首页-转化率统计
Showing 11 changed files with 159 additions and 11 deletions
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/controller/IndexController.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/LogsRecordVisitsInfo.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatDateInfo.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatHInfo.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatMInfo.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatRankingInfo.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatWInfo.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatYInfo.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/mapper/TkRecordStatMapper.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/service/TkRecordStatService.java
- talkonlineweb/src/main/java/com/lyms/talkonlineweb/service/impl/TkRecordStatServiceImpl.java
talkonlineweb/src/main/java/com/lyms/talkonlineweb/controller/IndexController.java
View file @
f52b828
1 | 1 | package com.lyms.talkonlineweb.controller; |
2 | 2 | |
3 | +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | |
4 | +import com.baomidou.mybatisplus.core.toolkit.Wrappers; | |
3 | 5 | import com.lyms.talkonlineweb.domain.*; |
4 | 6 | import com.lyms.talkonlineweb.result.BaseResponse; |
5 | 7 | import com.lyms.talkonlineweb.service.IndexService; |
8 | +import com.lyms.talkonlineweb.service.LymsHospitalService; | |
6 | 9 | import com.lyms.talkonlineweb.service.TkRecordStatService; |
7 | 10 | import org.springframework.beans.factory.annotation.Autowired; |
8 | 11 | import org.springframework.web.bind.annotation.GetMapping; |
9 | 12 | import org.springframework.web.bind.annotation.RequestMapping; |
10 | 13 | import org.springframework.web.bind.annotation.RestController; |
11 | 14 | |
15 | +import java.util.HashMap; | |
12 | 16 | import java.util.List; |
13 | 17 | import java.util.Map; |
14 | 18 | |
... | ... | @@ -22,6 +26,7 @@ |
22 | 26 | @Autowired |
23 | 27 | private TkRecordStatService tkRecordStatService; |
24 | 28 | |
29 | + | |
25 | 30 | /** |
26 | 31 | * 访问统计 |
27 | 32 | * @return |
... | ... | @@ -105,6 +110,22 @@ |
105 | 110 | BaseResponse baseResponse=new BaseResponse(); |
106 | 111 | List<TkRecordStatRankingInfo> tkRecordStatRanking = tkRecordStatService.getTkRecordStatRanking(); |
107 | 112 | baseResponse.setObject(tkRecordStatRanking); |
113 | + return baseResponse; | |
114 | + } | |
115 | + /** | |
116 | + * 首页-转化率-按医院分时段筛选 | |
117 | + * @param | |
118 | + * @return | |
119 | + */ | |
120 | + @GetMapping("getLogsRecordVisitsInfo") | |
121 | + public BaseResponse getLogsRecordVisitsInfo(String startdate,String enddate,Integer hid){ | |
122 | + BaseResponse baseResponse=new BaseResponse(); | |
123 | + Map<String,Object>map=new HashMap<>(); | |
124 | + List<LogsRecordVisitsInfo> listVisits = tkRecordStatService.getLogsRecordVisits(startdate,enddate); | |
125 | + List<LogsRecordVisitsInfo> listRecord = tkRecordStatService.getLogsRecordRecord(startdate,enddate,hid); | |
126 | + map.put("listVisits",listVisits); | |
127 | + map.put("listRecord",listRecord); | |
128 | + baseResponse.setObject(map); | |
108 | 129 | return baseResponse; |
109 | 130 | } |
110 | 131 |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/LogsRecordVisitsInfo.java
View file @
f52b828
1 | +package com.lyms.talkonlineweb.domain; | |
2 | + | |
3 | + | |
4 | +import com.baomidou.mybatisplus.annotation.TableField; | |
5 | +import com.baomidou.mybatisplus.annotation.TableName; | |
6 | +import lombok.Data; | |
7 | + | |
8 | +import java.io.Serializable; | |
9 | +import java.util.Date; | |
10 | + | |
11 | +/** | |
12 | + *首页-转化率-按医院分时段筛选统计图 | |
13 | + * @TableName logsRecord_Visits_info | |
14 | + */ | |
15 | +@Data | |
16 | +@TableName(value ="logsRecord_Visits_info") | |
17 | +public class LogsRecordVisitsInfo implements Serializable { | |
18 | + | |
19 | + /** | |
20 | + * 筛选时间 | |
21 | + */ | |
22 | + @TableField(value = "ldate") | |
23 | + private String ldate; | |
24 | + /** | |
25 | + * 医院ID | |
26 | + */ | |
27 | + @TableField(value = "hid") | |
28 | + private long hid; | |
29 | + /** | |
30 | + * 医院名称 | |
31 | + */ | |
32 | + @TableField(value = "hname") | |
33 | + private String hname; | |
34 | + /** | |
35 | + * 访问量 | |
36 | + */ | |
37 | + @TableField(value = "visits") | |
38 | + private long visits; | |
39 | + /** | |
40 | + * 问诊量 | |
41 | + */ | |
42 | + @TableField(value = "dcount") | |
43 | + private long dcount; | |
44 | + /** | |
45 | + * 转化率 | |
46 | + */ | |
47 | + @TableField(exist = false) | |
48 | + private long conversion; | |
49 | + | |
50 | + | |
51 | + | |
52 | +} |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatDateInfo.java
View file @
f52b828
... | ... | @@ -4,13 +4,15 @@ |
4 | 4 | import com.baomidou.mybatisplus.annotation.TableName; |
5 | 5 | import lombok.Data; |
6 | 6 | |
7 | +import java.io.Serializable; | |
8 | + | |
7 | 9 | /** |
8 | 10 | *首页-日期筛选问诊量视图 |
9 | 11 | * @TableName tkRecordStat_date_info |
10 | 12 | */ |
11 | 13 | @Data |
12 | 14 | @TableName(value ="tkRecordStat_date_info") |
13 | -public class TkRecordStatDateInfo { | |
15 | +public class TkRecordStatDateInfo implements Serializable { | |
14 | 16 | |
15 | 17 | /** |
16 | 18 | * 医院ID |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatHInfo.java
View file @
f52b828
... | ... | @@ -4,13 +4,15 @@ |
4 | 4 | import com.baomidou.mybatisplus.annotation.TableName; |
5 | 5 | import lombok.Data; |
6 | 6 | |
7 | +import java.io.Serializable; | |
8 | + | |
7 | 9 | /** |
8 | 10 | *首页-今日视图 |
9 | 11 | * @TableName tkRecordStat_h_info |
10 | 12 | */ |
11 | 13 | @TableName(value ="tkRecordStat_h_info") |
12 | 14 | @Data |
13 | -public class TkRecordStatHInfo { | |
15 | +public class TkRecordStatHInfo implements Serializable { | |
14 | 16 | |
15 | 17 | /** |
16 | 18 | * 医院ID |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatMInfo.java
View file @
f52b828
... | ... | @@ -4,13 +4,15 @@ |
4 | 4 | import com.baomidou.mybatisplus.annotation.TableName; |
5 | 5 | import lombok.Data; |
6 | 6 | |
7 | +import java.io.Serializable; | |
8 | + | |
7 | 9 | /** |
8 | 10 | *首页-本周视图 |
9 | 11 | * @TableName tkRecordStat_m_info |
10 | 12 | */ |
11 | 13 | @Data |
12 | 14 | @TableName(value ="tkRecordStat_m_info") |
13 | -public class TkRecordStatMInfo { | |
15 | +public class TkRecordStatMInfo implements Serializable { | |
14 | 16 | |
15 | 17 | /** |
16 | 18 | * 医院ID |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatRankingInfo.java
View file @
f52b828
... | ... | @@ -5,13 +5,15 @@ |
5 | 5 | import com.baomidou.mybatisplus.annotation.TableName; |
6 | 6 | import lombok.Data; |
7 | 7 | |
8 | +import java.io.Serializable; | |
9 | + | |
8 | 10 | /** |
9 | - *首页-日期筛选问诊量视图 | |
11 | + *首页-医院问诊量排名 | |
10 | 12 | * @TableName tkRecordStat_ranking_info |
11 | 13 | */ |
12 | 14 | @Data |
13 | 15 | @TableName(value ="tkRecordStat_ranking_info") |
14 | -public class TkRecordStatRankingInfo { | |
16 | +public class TkRecordStatRankingInfo implements Serializable { | |
15 | 17 | |
16 | 18 | /** |
17 | 19 | * 医院ID |
18 | 20 | |
... | ... | @@ -21,12 +23,12 @@ |
21 | 23 | /** |
22 | 24 | * 医院名称 |
23 | 25 | */ |
24 | - @TableField(value = "hid") | |
26 | + @TableField(value = "hname") | |
25 | 27 | private String hname; |
26 | 28 | /** |
27 | 29 | * 医院总问诊量 |
28 | 30 | */ |
29 | - @TableField(value = "hid") | |
31 | + @TableField(value = "total") | |
30 | 32 | private long total; |
31 | 33 | |
32 | 34 |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatWInfo.java
View file @
f52b828
... | ... | @@ -4,13 +4,15 @@ |
4 | 4 | import com.baomidou.mybatisplus.annotation.TableName; |
5 | 5 | import lombok.Data; |
6 | 6 | |
7 | +import java.io.Serializable; | |
8 | + | |
7 | 9 | /** |
8 | 10 | *首页-本周视图 |
9 | 11 | * @TableName tkRecordStat_w_info |
10 | 12 | */ |
11 | 13 | @Data |
12 | 14 | @TableName(value ="tkRecordStat_w_info") |
13 | -public class TkRecordStatWInfo { | |
15 | +public class TkRecordStatWInfo implements Serializable { | |
14 | 16 | |
15 | 17 | /** |
16 | 18 | * 医院ID |
... | ... | @@ -26,7 +28,7 @@ |
26 | 28 | * 问诊量 |
27 | 29 | */ |
28 | 30 | @TableField(value = "dcount") |
29 | - private long wcount; | |
31 | + private long dcount; | |
30 | 32 | |
31 | 33 | |
32 | 34 |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/domain/TkRecordStatYInfo.java
View file @
f52b828
... | ... | @@ -5,13 +5,15 @@ |
5 | 5 | import com.baomidou.mybatisplus.annotation.TableName; |
6 | 6 | import lombok.Data; |
7 | 7 | |
8 | +import java.io.Serializable; | |
9 | + | |
8 | 10 | /** |
9 | 11 | *首页-本年视图 |
10 | 12 | * @TableName tkRecordStat_y_info |
11 | 13 | */ |
12 | 14 | @Data |
13 | 15 | @TableName(value ="tkRecordStat_y_info") |
14 | -public class TkRecordStatYInfo { | |
16 | +public class TkRecordStatYInfo implements Serializable { | |
15 | 17 | |
16 | 18 | /** |
17 | 19 | * 医院ID |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/mapper/TkRecordStatMapper.java
View file @
f52b828
... | ... | @@ -144,7 +144,8 @@ |
144 | 144 | "</choose>", |
145 | 145 | "from tkRecordStat_date_info", |
146 | 146 | "where 1=1", |
147 | - "<![CDATA[ and DATE(days)>=DATE(#{startdate}) and DATE(days)<=DATE(#{enddate}) ]]>", | |
147 | +// "<![CDATA[ and DATE(days)>=DATE(#{startdate}) and DATE(days)<=DATE(#{enddate}) ]]>", | |
148 | + "<![CDATA[ and (days between #{startdate} and #{enddate}) ]]>", | |
148 | 149 | "<choose>", |
149 | 150 | "<when test='hid!=null'>", |
150 | 151 | "and hid=#{hid}", |
... | ... | @@ -164,5 +165,53 @@ |
164 | 165 | */ |
165 | 166 | @Select("select hid,hname,total from tkRecordStat_ranking_info") |
166 | 167 | List<TkRecordStatRankingInfo> getTkRecordStatRanking(); |
168 | + | |
169 | + /** | |
170 | + * 首页-转化率-全部医院分时段筛选转化率 | |
171 | + * @return | |
172 | + */ | |
173 | + @Select({"<script>", | |
174 | + "select ", | |
175 | + "ho.hid,ho.hname,a.conversion ", | |
176 | + "from lyms_hospital ho", | |
177 | + "left join (", | |
178 | + "select", | |
179 | + " ldate,hid,hname,sum(visits) as 'visits',sum(dcount) as 'dcount',TRUNCATE(sum(dcount)/sum(visits)*100,0) as 'conversion'", | |
180 | + "from logsRecord_Visits_info", | |
181 | + "where 1=1", | |
182 | + "<choose>", | |
183 | + "<when test='startdate!=null and enddate!=null' >", | |
184 | + "<![CDATA[ and (ldate between #{startdate} and #{enddate}) ]]>", | |
185 | + "</when>", | |
186 | + "<otherwise>", | |
187 | + "<![CDATA[ and date_format(ldate,'%Y-%m') = date_format(NOW(),'%Y-%m') ]]>", | |
188 | + "</otherwise>", | |
189 | + "</choose>", | |
190 | + "GROUP BY hid", | |
191 | + "ORDER BY ldate ASC", | |
192 | + ") a on a.hid=ho.hid", | |
193 | + "</script>"}) | |
194 | + List<LogsRecordVisitsInfo> getLogsRecordVisits(@Param("startdate") String startdate,@Param("enddate") String enddate); | |
195 | + | |
196 | + /** | |
197 | + * 首页-转化率-按医院分时段筛选-访问量和问诊量 | |
198 | + * @return | |
199 | + */ | |
200 | + @Select({"<script>", | |
201 | + "select", | |
202 | + " ldate,hid,hname,visits,dcount", | |
203 | + "from logsRecord_Visits_info", | |
204 | + "where hid=#{hid}", | |
205 | + "<choose>", | |
206 | + "<when test='startdate!=null and enddate!=null' >", | |
207 | + "<![CDATA[ and (ldate between #{startdate} and #{enddate}) ]]>", | |
208 | + "</when>", | |
209 | + "<otherwise>", | |
210 | + "<![CDATA[ and date_format(ldate,'%Y-%m') = date_format(NOW(),'%Y-%m') ]]>", | |
211 | + "</otherwise>", | |
212 | + "</choose>", | |
213 | + "ORDER BY ldate ASC", | |
214 | + "</script>"}) | |
215 | + List<LogsRecordVisitsInfo> getLogsRecordRecord(@Param("startdate") String startdate,@Param("enddate") String enddate,@Param("hid") Integer hid); | |
167 | 216 | } |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/service/TkRecordStatService.java
View file @
f52b828
... | ... | @@ -19,5 +19,9 @@ |
19 | 19 | List<TkRecordStatDateInfo> getTkRecordStatDate(String startdate, String enddate, Integer hid); |
20 | 20 | |
21 | 21 | List<TkRecordStatRankingInfo> getTkRecordStatRanking(); |
22 | + | |
23 | + List<LogsRecordVisitsInfo> getLogsRecordVisits(String startdate,String enddate); | |
24 | + | |
25 | + List<LogsRecordVisitsInfo> getLogsRecordRecord(String startdate, String enddate, Integer hid); | |
22 | 26 | } |
talkonlineweb/src/main/java/com/lyms/talkonlineweb/service/impl/TkRecordStatServiceImpl.java
View file @
f52b828
... | ... | @@ -46,5 +46,15 @@ |
46 | 46 | public List<TkRecordStatRankingInfo> getTkRecordStatRanking() { |
47 | 47 | return tkRecordStatMapper.getTkRecordStatRanking(); |
48 | 48 | } |
49 | + | |
50 | + @Override | |
51 | + public List<LogsRecordVisitsInfo> getLogsRecordVisits(String startdate,String enddate) { | |
52 | + return tkRecordStatMapper.getLogsRecordVisits(startdate, enddate); | |
53 | + } | |
54 | + | |
55 | + @Override | |
56 | + public List<LogsRecordVisitsInfo> getLogsRecordRecord(String startdate, String enddate, Integer hid) { | |
57 | + return tkRecordStatMapper.getLogsRecordRecord(startdate, enddate, hid); | |
58 | + } | |
49 | 59 | } |