Commit 8f95fc9f authored by wujiang's avatar wujiang

修改统计接口

parent 79102718
......@@ -256,12 +256,20 @@ public class StatisticsRecordService
Map<String, Object> map = new HashMap<String, Object>();
if ("year".equals(mode)) {
list = this.baseMapper.tagStatisticsYear(tag, startDate, endDate);
}
{
} else {
list = this.baseMapper.tagStatisticsMonth(tag, startDate, endDate);
}
Calendar cal = Calendar.getInstance();
cal.setTime(endDate);
int year = cal.get(Calendar.YEAR);
list.forEach(i -> {
if ("year".equals(mode)) {
if (i.get("date") != null && Integer.valueOf((String)(i.get("date"))) <= year) {
map.put((String) i.get("date"), i.get("datas"));
}
} else {
map.put((String) i.get("date"), i.get("datas"));
}
});
return map;
}
......@@ -272,12 +280,20 @@ public class StatisticsRecordService
Map<String, Object> map = new HashMap<String, Object>();
if ("year".equals(mode)) {
list = this.baseMapper.docStatisticsYear(categoryName, startDate, endDate);
}
{
} else {
list = this.baseMapper.docStatisticsMonth(categoryName, startDate, endDate);
}
Calendar cal = Calendar.getInstance();
cal.setTime(endDate);
int year = cal.get(Calendar.YEAR);
list.forEach(i -> {
if ("year".equals(mode)) {
if (i.get("date") != null &&Integer.valueOf((String)(i.get("date"))) <= year) {
map.put((String) i.get("date"), i.get("datas"));
}
} else {
map.put((String) i.get("date"), i.get("datas"));
}
});
return map;
}
......@@ -305,7 +321,9 @@ public class StatisticsRecordService
// '500to1000', 'more1000K')";
list = this.baseMapper.tagChartStatistics(tag, startDate, endDate, sb.toString());
list.forEach(i -> {
if (i.get("level") != null) {
map.put((String) i.get("level"), i.get("datas"));
}
});
return map;
}
......
......@@ -217,17 +217,18 @@
SELECT * FROM (
SELECT
SUM( ktv.TAG_VALUE ) AS
datas,DATE_FORMAT(ktv.REC_DATE,'%Y-%m') AS date
datas,DATE_FORMAT(ktv_time.TAG_VALUE,'%Y-%m') AS date
FROM
knowledge_tag_value ktv
LEFT JOIN knowledge_tag_instance kti ON
kti.SEQUENCE_NBR =
ktv.INSTANCE_SEQ
LEFT JOIN knowledge_tag_instance kti ON kti.SEQUENCE_NBR = ktv.INSTANCE_SEQ
LEFT JOIN knowledge_doc_content kdc ON kdc.SEQUENCE_NBR = kti.TARGET_SEQ
LEFT JOIN knowledge_tag_instance kti_time ON kti_time.TARGET_SEQ = kdc.SEQUENCE_NBR AND kti_time.TAG_NAME = '发生时间'
LEFT JOIN knowledge_tag_value ktv_time ON kti_time.SEQUENCE_NBR = ktv_time.INSTANCE_SEQ
WHERE
TAG_NAME = #{tag} AND
ktv.REC_DATE BETWEEN #{startDate} AND #{endDate}
kti.TAG_NAME = #{tag} AND
ktv_time.TAG_VALUE BETWEEN #{startDate} AND #{endDate}
GROUP BY
DATE_FORMAT(ktv.REC_DATE,'%Y-%m')
DATE_FORMAT(ktv_time.TAG_VALUE,'%Y-%m')
UNION all
SELECT
0 AS datas,
......@@ -250,17 +251,18 @@
SELECT * FROM (
SELECT
SUM( ktv.TAG_VALUE ) AS
datas,DATE_FORMAT(ktv.REC_DATE,'%Y') AS date
datas,DATE_FORMAT(ktv_time.TAG_VALUE,'%Y') AS date
FROM
knowledge_tag_value
ktv
LEFT JOIN knowledge_tag_instance kti ON kti.SEQUENCE_NBR =
ktv.INSTANCE_SEQ
knowledge_tag_value ktv
LEFT JOIN knowledge_tag_instance kti ON kti.SEQUENCE_NBR = ktv.INSTANCE_SEQ
LEFT JOIN knowledge_doc_content kdc ON kdc.SEQUENCE_NBR = kti.TARGET_SEQ
LEFT JOIN knowledge_tag_instance kti_time ON kti_time.TARGET_SEQ = kdc.SEQUENCE_NBR AND kti_time.TAG_NAME = '发生时间'
LEFT JOIN knowledge_tag_value ktv_time ON kti_time.SEQUENCE_NBR = ktv_time.INSTANCE_SEQ
WHERE
TAG_NAME = #{tag} AND ktv.REC_DATE BETWEEN
#{startDate} AND #{endDate}
kti.TAG_NAME = #{tag} AND
ktv_time.TAG_VALUE BETWEEN #{startDate} AND #{endDate}
GROUP BY
DATE_FORMAT(ktv.REC_DATE,'%Y')
DATE_FORMAT(ktv_time.TAG_VALUE,'%Y')
UNION all
SELECT
0 AS datas,
......@@ -282,18 +284,19 @@
parameterType="java.util.Map">
SELECT * FROM (
SELECT
COUNT(1) AS datas,DATE_FORMAT(kdc.REC_DATE,'%Y-%m')AS date
COUNT(1) AS datas,DATE_FORMAT(ktv_time.TAG_VALUE,'%Y-%m')AS date
FROM
knowledge_doc_content kdc
LEFT JOIN knowledge_doc_category kdca ON
kdca.SEQUENCE_NBR=kdc.DIRECTORY_ID
LEFT JOIN knowledge_doc_category kdca ON kdca.SEQUENCE_NBR=kdc.DIRECTORY_ID
LEFT JOIN knowledge_tag_instance kti_time ON kti_time.TARGET_SEQ = kdc.SEQUENCE_NBR AND kti_time.TAG_NAME = '发生时间'
LEFT JOIN knowledge_tag_value ktv_time ON kti_time.SEQUENCE_NBR = ktv_time.INSTANCE_SEQ
WHERE
kdc.REC_DATE BETWEEN #{startDate} AND #{endDate}
ktv_time.TAG_VALUE BETWEEN #{startDate} AND #{endDate}
<if test="categoryName != null and categoryName != ''">
AND kdca.CATEGORY_NAME=#{categoryName}
</if>
GROUP BY
DATE_FORMAT(kdc.REC_DATE,'%Y-%m')
DATE_FORMAT(ktv_time.TAG_VALUE,'%Y-%m')
UNION all
SELECT
0 AS datas,
......@@ -311,18 +314,19 @@
parameterType="java.util.Map">
SELECT * FROM (
SELECT
COUNT(1) AS datas,DATE_FORMAT(kdc.REC_DATE,'%Y')AS date
COUNT(1) AS datas,DATE_FORMAT(ktv_time.TAG_VALUE,'%Y')AS date
FROM
knowledge_doc_content kdc
LEFT JOIN knowledge_doc_category kdca ON
kdca.SEQUENCE_NBR=kdc.DIRECTORY_ID
LEFT JOIN knowledge_doc_category kdca ON kdca.SEQUENCE_NBR=kdc.DIRECTORY_ID
LEFT JOIN knowledge_tag_instance kti_time ON kti_time.TARGET_SEQ = kdc.SEQUENCE_NBR AND kti_time.TAG_NAME = '发生时间'
LEFT JOIN knowledge_tag_value ktv_time ON kti_time.SEQUENCE_NBR = ktv_time.INSTANCE_SEQ
WHERE
kdc.REC_DATE BETWEEN #{startDate} AND #{endDate}
ktv_time.TAG_VALUE BETWEEN #{startDate} AND #{endDate}
<if test="categoryName != null and categoryName != ''">
AND kdca.CATEGORY_NAME=#{categoryName}
</if>
GROUP BY
DATE_FORMAT(kdc.REC_DATE,'%Y')
DATE_FORMAT(ktv_time.TAG_VALUE,'%Y')
UNION all
SELECT
0 AS datas,
......@@ -343,10 +347,11 @@
FROM
knowledge_doc_content kdc
LEFT JOIN knowledge_tag_instance kti ON kti.TARGET_SEQ = kdc.SEQUENCE_NBR
LEFT JOIN knowledge_tag_value ktv ON kti.SEQUENCE_NBR =
ktv.INSTANCE_SEQ
LEFT JOIN knowledge_tag_value ktv ON kti.SEQUENCE_NBR = ktv.INSTANCE_SEQ
LEFT JOIN knowledge_tag_instance kti_time ON kti_time.TARGET_SEQ = kdc.SEQUENCE_NBR AND kti_time.TAG_NAME = '发生时间'
LEFT JOIN knowledge_tag_value ktv_time ON kti_time.SEQUENCE_NBR = ktv_time.INSTANCE_SEQ
WHERE
TAG_NAME = #{tag} AND ktv.REC_DATE BETWEEN #{startDate}AND #{endDate}
kti.TAG_NAME = #{tag} AND ktv_time.TAG_VALUE BETWEEN #{startDate} AND #{endDate}
GROUP BY
${splitSQL}
</select>
......@@ -357,10 +362,11 @@
COUNT(1) AS datas,kdca.CATEGORY_NAME AS categoryName
FROM
knowledge_doc_content kdc
LEFT JOIN knowledge_doc_category kdca ON
kdca.SEQUENCE_NBR=kdc.DIRECTORY_ID
LEFT JOIN knowledge_doc_category kdca ON kdca.SEQUENCE_NBR=kdc.DIRECTORY_ID
LEFT JOIN knowledge_tag_instance kti_time ON kti_time.TARGET_SEQ = kdc.SEQUENCE_NBR AND kti_time.TAG_NAME = '发生时间'
LEFT JOIN knowledge_tag_value ktv_time ON kti_time.SEQUENCE_NBR = ktv_time.INSTANCE_SEQ
WHERE
kdc.REC_DATE BETWEEN #{startDate} AND #{endDate}
ktv_time.TAG_VALUE BETWEEN #{startDate} AND #{endDate}
GROUP BY
kdca.CATEGORY_NAME
</select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment