Commit 18a85c2bbb783703ceae59c221d8550b2e09fef5
1 parent
ae5d926ef4
Exists in
dev
孕妇学校-调查问卷统计
Showing 7 changed files with 71 additions and 5 deletions
- platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/QuestionnaireRecordDetailsMapper.java
- platform-biz-service/src/main/java/com/lyms/platform/permission/model/QuestionnaireRecordDetailsEntity.java
- platform-biz-service/src/main/java/com/lyms/platform/permission/service/QuestionnaireRecordDetailsService.java
- platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/QuestionnaireRecordDetailsServiceImpl.java
- platform-biz-service/src/main/resources/mainOrm/master/QuestionnaireRecordDetailsMapper.xml
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/QuestionnaireController.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/QuestionnaireFacade.java
platform-biz-service/src/main/java/com/lyms/platform/permission/dao/master/QuestionnaireRecordDetailsMapper.java
View file @
18a85c2
| ... | ... | @@ -10,5 +10,7 @@ |
| 10 | 10 | public interface QuestionnaireRecordDetailsMapper { |
| 11 | 11 | List<QuestionnaireRecordDetailsEntity> getList(@Param("id") Integer id); |
| 12 | 12 | void add(QuestionnaireRecordDetailsEntity questionnaireRecordEntity); |
| 13 | + | |
| 14 | + List<QuestionnaireRecordDetailsEntity> getList2(QuestionnaireRecordDetailsEntity query); | |
| 13 | 15 | } |
platform-biz-service/src/main/java/com/lyms/platform/permission/model/QuestionnaireRecordDetailsEntity.java
View file @
18a85c2
| ... | ... | @@ -10,6 +10,36 @@ |
| 10 | 10 | private String answer;//答案 |
| 11 | 11 | private String option;//选项值 |
| 12 | 12 | |
| 13 | + private String sumPoint; | |
| 14 | + | |
| 15 | + private String trueCount2; | |
| 16 | + | |
| 17 | + private String truePercentage; | |
| 18 | + | |
| 19 | + public String getTruePercentage() { | |
| 20 | + return truePercentage; | |
| 21 | + } | |
| 22 | + | |
| 23 | + public void setTruePercentage(String truePercentage) { | |
| 24 | + this.truePercentage = truePercentage; | |
| 25 | + } | |
| 26 | + | |
| 27 | + public String getSumPoint() { | |
| 28 | + return sumPoint; | |
| 29 | + } | |
| 30 | + | |
| 31 | + public void setSumPoint(String sumPoint) { | |
| 32 | + this.sumPoint = sumPoint; | |
| 33 | + } | |
| 34 | + | |
| 35 | + public String getTrueCount2() { | |
| 36 | + return trueCount2; | |
| 37 | + } | |
| 38 | + | |
| 39 | + public void setTrueCount2(String trueCount2) { | |
| 40 | + this.trueCount2 = trueCount2; | |
| 41 | + } | |
| 42 | + | |
| 13 | 43 | public Integer getId() { |
| 14 | 44 | return id; |
| 15 | 45 | } |
platform-biz-service/src/main/java/com/lyms/platform/permission/service/QuestionnaireRecordDetailsService.java
View file @
18a85c2
| ... | ... | @@ -8,5 +8,7 @@ |
| 8 | 8 | public interface QuestionnaireRecordDetailsService { |
| 9 | 9 | List<QuestionnaireRecordDetailsEntity> getList(Integer id); |
| 10 | 10 | void add(QuestionnaireRecordDetailsEntity questionnaireRecordEntity); |
| 11 | + | |
| 12 | + List<QuestionnaireRecordDetailsEntity> getList2(QuestionnaireRecordDetailsEntity questionnaireRecordDetailsEntity); | |
| 11 | 13 | } |
platform-biz-service/src/main/java/com/lyms/platform/permission/service/impl/QuestionnaireRecordDetailsServiceImpl.java
View file @
18a85c2
| ... | ... | @@ -18,6 +18,11 @@ |
| 18 | 18 | } |
| 19 | 19 | |
| 20 | 20 | @Override |
| 21 | + public List<QuestionnaireRecordDetailsEntity> getList2(QuestionnaireRecordDetailsEntity questionnaireRecordDetailsEntity) { | |
| 22 | + return questionnaireRecordDetailsMapper.getList2(questionnaireRecordDetailsEntity); | |
| 23 | + } | |
| 24 | + | |
| 25 | + @Override | |
| 21 | 26 | public void add(QuestionnaireRecordDetailsEntity questionnaireRecordEntity) { |
| 22 | 27 | questionnaireRecordDetailsMapper.add(questionnaireRecordEntity); |
| 23 | 28 | } |
platform-biz-service/src/main/resources/mainOrm/master/QuestionnaireRecordDetailsMapper.xml
View file @
18a85c2
| ... | ... | @@ -30,6 +30,31 @@ |
| 30 | 30 | questionnaire_record_id=#{id} |
| 31 | 31 | </select> |
| 32 | 32 | |
| 33 | + | |
| 34 | + <select id="getList2" resultType="com.lyms.platform.permission.model.QuestionnaireRecordDetailsEntity" | |
| 35 | + parameterType="com.lyms.platform.permission.model.QuestionnaireRecordDetailsEntity"> | |
| 36 | + select | |
| 37 | + k.name, | |
| 38 | + sum(k.point) as sumPoint , | |
| 39 | + sum(k.trueCount2) as trueCount2, | |
| 40 | + CONCAT(ROUND(sum(k.trueCount2)*2/sum(k.point) * 100, 2), '%') AS truePercentage | |
| 41 | + from (SELECT | |
| 42 | + d.name, | |
| 43 | + d.point, | |
| 44 | + (select count(1) from questionnaire_record_details t where t.id =d.id and (t.answer = t.choice or t.answer = '') ) as trueCount2 | |
| 45 | + FROM | |
| 46 | + questionnaire_record c, | |
| 47 | + questionnaire_record_details d | |
| 48 | + where | |
| 49 | + c.id = d.questionnaire_record_id | |
| 50 | + <if test="name != null and name != ''"> | |
| 51 | + and c.name like CONCAT('%' #{name} '%') | |
| 52 | + </if> | |
| 53 | + ) k | |
| 54 | + group by k.name | |
| 55 | + | |
| 56 | + </select> | |
| 57 | + | |
| 33 | 58 | <insert id="add" parameterType="com.lyms.platform.permission.model.QuestionnaireRecordDetailsEntity"> |
| 34 | 59 | INSERT INTO questionnaire_record_details(choice,answer,name,questionnaire_record_id,point,`option`) |
| 35 | 60 | VALUES (#{choice},#{answer},#{name},#{questionnaireRecordId},#{point},#{option}) |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/QuestionnaireController.java
View file @
18a85c2
| ... | ... | @@ -79,7 +79,7 @@ |
| 79 | 79 | |
| 80 | 80 | //问卷调查统计 |
| 81 | 81 | @RequestMapping(method = RequestMethod.GET, value = "/questionnaire/getCount") |
| 82 | - public void getCount(HttpServletResponse response,@RequestParam(required = true) String queryName){ | |
| 82 | + public void getCount(HttpServletResponse response,@RequestParam(required = false) String queryName){ | |
| 83 | 83 | Map<String,Object> resMap = questionnaireFacade.getCount(queryName); |
| 84 | 84 | ResultUtils.buildSuccessResultAndWrite(response,resMap); |
| 85 | 85 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/QuestionnaireFacade.java
View file @
18a85c2
| ... | ... | @@ -14,10 +14,7 @@ |
| 14 | 14 | import java.math.BigDecimal; |
| 15 | 15 | import java.math.RoundingMode; |
| 16 | 16 | import java.text.NumberFormat; |
| 17 | -import java.util.HashMap; | |
| 18 | -import java.util.List; | |
| 19 | -import java.util.Locale; | |
| 20 | -import java.util.Map; | |
| 17 | +import java.util.*; | |
| 21 | 18 | |
| 22 | 19 | @Component |
| 23 | 20 | public class QuestionnaireFacade { |
| ... | ... | @@ -118,6 +115,11 @@ |
| 118 | 115 | map.put("accuracyRate",accuracyRate); |
| 119 | 116 | |
| 120 | 117 | } |
| 118 | + QuestionnaireRecordDetailsEntity query = new QuestionnaireRecordDetailsEntity(); | |
| 119 | + query.setName(questionnaireEntity.getName()); | |
| 120 | + // 每个问题的正确数量 | |
| 121 | + List<QuestionnaireRecordDetailsEntity> detailsList = questionnaireRecordDetailsService.getList2(query); | |
| 122 | + map.put("detailsList",detailsList); | |
| 121 | 123 | } |
| 122 | 124 | } |
| 123 | 125 |