From f3c9a377ca05de5d8c162fb9b6ebbee6cf7faf46 Mon Sep 17 00:00:00 2001 From: zhangye <654600784@qq.com> Date: Mon, 30 May 2022 17:38:27 +0800 Subject: [PATCH] =?UTF-8?q?=E9=AB=98=E5=8D=B1=E7=AD=9B=E6=9F=A5=E5=90=8E?= =?UTF-8?q?=E5=8F=B0=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../carbasics/api/ScreeningController.java | 31 +++ .../carbasics/bean/dto/QuestionnaireDto.java | 65 ++++++ .../carbasics/bean/vo/QuestionnaireVo.java | 214 ++++++++++++++++++ .../persist/dao/QuestionnaireDao.java | 8 + .../carbasics/service/IScreeningService.java | 24 ++ .../carbasics/service/ScreeningService.java | 141 +++++++++++- .../com/ccsens/carbasics/util/Constant.java | 5 +- .../resources/mapper_dao/QuestionnaireDao.xml | 193 ++++++++++++++-- 8 files changed, 664 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/ccsens/carbasics/api/ScreeningController.java b/src/main/java/com/ccsens/carbasics/api/ScreeningController.java index 62408db..6976dba 100644 --- a/src/main/java/com/ccsens/carbasics/api/ScreeningController.java +++ b/src/main/java/com/ccsens/carbasics/api/ScreeningController.java @@ -6,6 +6,8 @@ import com.ccsens.carbasics.service.IScreeningService; import com.ccsens.cloudutil.annotation.MustLogin; import com.ccsens.util.JsonResponse; import com.ccsens.util.bean.dto.QueryDto; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @@ -71,4 +73,33 @@ public class ScreeningController { return JsonResponse.newInstance().ok(centerWorkload); } +// @MustLogin + @ApiOperation(value = "后台查看高危筛查列表", notes = "") + @RequestMapping(value = "/back/query", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> backQueryScreening(@ApiParam @Validated @RequestBody QueryDto params) throws Exception { + log.info("后台查看高危筛查列表:{}",params); + PageInfo backQueryScreening = screeningService.backQueryScreening(params.getParam(), params.getUserId()); + log.info("后台查看高危筛查列表结束"); + return JsonResponse.newInstance().ok(backQueryScreening); + } + + @MustLogin + @ApiOperation(value = "修改高危筛查的待处理状态", notes = "") + @RequestMapping(value = "/back/update", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse backUpdateScreening(@ApiParam @Validated @RequestBody QueryDto params) throws Exception { + log.info("修改高危筛查的待处理状态:{}",params); + screeningService.backUpdateScreening(params.getParam(), params.getUserId()); + log.info("修改高危筛查的待处理状态成功"); + return JsonResponse.newInstance().ok(); + } + + @MustLogin + @ApiOperation(value = "导出高危筛查统计表", notes = "") + @RequestMapping(value = "/back/export", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse backExport(@ApiParam @Validated @RequestBody QueryDto params) throws Exception { + log.info("导出高危筛查统计表:{}",params); + String path = screeningService.backExport(params.getParam(), params.getUserId()); + log.info("导出高危筛查统计表成功:{}",path); + return JsonResponse.newInstance().ok(path); + } } diff --git a/src/main/java/com/ccsens/carbasics/bean/dto/QuestionnaireDto.java b/src/main/java/com/ccsens/carbasics/bean/dto/QuestionnaireDto.java index 7d36b2d..ecac0a2 100644 --- a/src/main/java/com/ccsens/carbasics/bean/dto/QuestionnaireDto.java +++ b/src/main/java/com/ccsens/carbasics/bean/dto/QuestionnaireDto.java @@ -4,8 +4,11 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; +import java.util.List; @Data public class QuestionnaireDto { @@ -140,4 +143,66 @@ public class QuestionnaireDto { private Long roleId; } + @Data + @ApiModel("修改高危筛健康跟踪") + public static class BackUpdateScreening { + @ApiModelProperty("问卷详情id") + private List detailIds; + @ApiModelProperty("健康跟踪 0待处理 1已联系 2已就诊") + private Byte healthTracking; + } + + @Data + @ApiModel("后台查看高危筛查信息") + public static class BackQueryScreening { + @ApiModelProperty("第几页") + @Min(value = 1) + private int pageNum = 1; + @ApiModelProperty("每页多少条") + @Min(value = 1) + @Max(value=100) + private int pageSize = 10; + + @ApiModelProperty("身份证号") + private String idCard; + @ApiModelProperty("姓名") + private String name; + @ApiModelProperty("性别 0女 1男") + private String sex; + @ApiModelProperty("出生日期筛选--开始") + private String startTime; + @ApiModelProperty("出生日期筛选--结束") + private String endTime; + @ApiModelProperty("年龄") + private String age; + @ApiModelProperty("手机号") + private String phone; + + + @ApiModelProperty("高血压 0没有 1有") + private Byte hypertension; + @ApiModelProperty("血脂 0没有 1有") + private Byte bloodFat; + @ApiModelProperty("糖尿病 0没有 1有") + private Byte diabetes; + @ApiModelProperty("心房颤动 0没有 1有") + private Byte fibrillation; + @ApiModelProperty("吸烟 0没有 1有") + private Byte smoke; + @ApiModelProperty("体重 0正常 1超重") + private Byte weight; + @ApiModelProperty("运动 0正常 1缺乏") + private Byte sports; + @ApiModelProperty("卒中家族史 0没有 1有") + private Byte apoplexyFamily; + @ApiModelProperty("脑卒中病史 0没有 1有") + private Byte cerebralStroke; + @ApiModelProperty("脑缺血病史 0没有 1有") + private Byte cerebralIschemia; + @ApiModelProperty("危险等级 0正常 1高危 2中危 3低危") + private Byte type; + @ApiModelProperty("健康跟踪 0待处理 1已联系 2已就诊") + private Byte healthTracking; + } + } diff --git a/src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java b/src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java index 9184849..1b43764 100644 --- a/src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java +++ b/src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java @@ -196,4 +196,218 @@ public class QuestionnaireVo { @ApiModelProperty("高危数量") private int highNum; } + + @Data + @ApiModel("后台分页查看高危筛查信息--返回") + public static class BackQueryScreening { + @ApiModelProperty("问卷详情id") + private Long id; + @ApiModelProperty("姓名") + private String name; + @ApiModelProperty("身份证号") + private String idCard; + @ApiModelProperty("性别 0女 1男") + private String sex; + @ApiModelProperty("出生日期") + private String birthday; + @ApiModelProperty("年龄") + private String age; + @ApiModelProperty("手机号") + private String phone; + @ApiModelProperty("备注") + private String remark; + @ApiModelProperty("病情") + private String illness; + + @ApiModelProperty("高血压 0没有 1有") + private String hypertension; + @ApiModelProperty("血脂 0没有 1有") + private String bloodFat; + @ApiModelProperty("糖尿病 0没有 1有") + private String diabetes; + @ApiModelProperty("心房颤动 0没有 1有") + private String fibrillation; + @ApiModelProperty("吸烟 0没有 1有") + private String smoke; + @ApiModelProperty("体重 0正常 1超重") + private String weight; + @ApiModelProperty("运动 0正常 1缺乏") + private String sports; + @ApiModelProperty("卒中家族史 0没有 1有") + private String apoplexyFamily; + @ApiModelProperty("脑卒中病史 0没有 1有") + private String cerebralStroke; + @ApiModelProperty("脑缺血病史 0没有 1有") + private String cerebralIschemia; + @ApiModelProperty("危险等级 0正常 1高危 2中危 3低危") + private Byte type; + @ApiModelProperty("健康跟踪 0待处理 1已联系 2已就诊") + private Byte healthTracking; + + public byte getType() { + byte b = 0; + if(StrUtil.isNotBlank(illness)){ + if(illness.split(",").length >= 3){ + b = 1; + }else if(illness.contains("09") || illness.contains("10")){ + b = 1; + }else if(illness.contains("01") || illness.contains("03") || illness.contains("04")){ + b = 2; + }else if(illness.contains("02") || illness.contains("05") + || illness.contains("06") || illness.contains("07") || illness.contains("08")){ + b = 3; + } + } + return b; + } + public String getTypeString() { + String s = "正常"; + if(ObjectUtil.isNotNull(getType())){ + switch (getType()){ + case 1: + s = "高危"; + break; + case 2: + s = "中危"; + break; + case 3: + s = "低危"; + break; + default: + } + } + return s; + } + public String getHealthTrackingString() { + String s = "待处理"; + switch (healthTracking){ + case 1: + s = "已联系"; + break; + case 2: + s = "已就诊"; + break; + default: + } + return s; + } + + + public String getIdCard() { + String s = idCard; + if(ObjectUtil.isNotNull(idCard)){ + s = DesensitizedUtils.idCardNum(idCard); + } + return s; + } + + public String getPhone() { + String p = phone; + if(ObjectUtil.isNotNull(phone)){ + p = DesensitizedUtils.mobilePhone(phone); + } + return p; + } + + public String getHypertension() { + String s = "无"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("01")){ + s = "有"; + } + } + return s; + } + + public String getBloodFat() { + String s = "正常"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("02")){ + s = "异常"; + } + } + return s; + } + + public String getDiabetes() { + String s = "无"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("03")){ + s = "有"; + } + } + return s; + } + + public String getFibrillation() { + String s = "无"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("04")){ + s = "有"; + } + } + return s; + } + + public String getSmoke() { + String s = "无"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("05")){ + s = "有"; + } + } + return s; + } + + public String getWeight() { + String s = "正常"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("06")){ + s = "超重"; + } + } + return s; + } + + public String getSports() { + String s = "正常"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("07")){ + s = "缺乏"; + } + } + return s; + } + + public String getApoplexyFamily() { + String s = "无"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("08")){ + s = "有"; + } + } + return s; + } + + public String getCerebralStroke() { + String s = "无"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("09")){ + s = "有"; + } + } + return s; + } + + public String getCerebralIschemia() { + String s = "无"; + if(StrUtil.isNotBlank(illness)){ + if(illness.contains("10")){ + s = "有"; + } + } + return s; + } + + } } diff --git a/src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDao.java b/src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDao.java index e046c75..3d40fb2 100644 --- a/src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDao.java +++ b/src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDao.java @@ -79,4 +79,12 @@ public interface QuestionnaireDao extends QuestionnaireMapper { * @return 返回医生工作量列表 */ List centerWorkload(@Param("now")long now,@Param("doctorIdList") List doctorIdList); + + /** + * 后台查找高危筛查问卷信息 + * @param param 筛选条件 + * @param now 当前时间 + * @return 返回类表 + */ + List backQueryScreening(@Param("param")QuestionnaireDto.BackQueryScreening param, @Param("now")long now); } diff --git a/src/main/java/com/ccsens/carbasics/service/IScreeningService.java b/src/main/java/com/ccsens/carbasics/service/IScreeningService.java index a02ff8c..3ef5d1f 100644 --- a/src/main/java/com/ccsens/carbasics/service/IScreeningService.java +++ b/src/main/java/com/ccsens/carbasics/service/IScreeningService.java @@ -2,6 +2,7 @@ package com.ccsens.carbasics.service; import com.ccsens.carbasics.bean.dto.QuestionnaireDto; import com.ccsens.carbasics.bean.vo.QuestionnaireVo; +import com.github.pagehelper.PageInfo; import java.util.List; @@ -40,4 +41,27 @@ public interface IScreeningService { * @return 返回医生列表 */ List centerWorkload(QuestionnaireDto.CenterWorkload param, Long userId); + + /** + * 后台分页查找高危筛查信息 + * @param param 筛选条件 + * @param userId userId + * @return 返回列表 + */ + PageInfo backQueryScreening(QuestionnaireDto.BackQueryScreening param, Long userId); + + /** + * 后台修改高危筛查健康跟踪状态 + * @param param 健康跟踪状态 + * @param userId userId + */ + void backUpdateScreening(QuestionnaireDto.BackUpdateScreening param, Long userId); + + /** + * 导出表格 + * @param param 筛选条件 + * @param userId userId + * @return 返回表格路径 + */ + String backExport(QuestionnaireDto.BackQueryScreening param, Long userId) throws Exception; } diff --git a/src/main/java/com/ccsens/carbasics/service/ScreeningService.java b/src/main/java/com/ccsens/carbasics/service/ScreeningService.java index adab90d..8a7e9f5 100644 --- a/src/main/java/com/ccsens/carbasics/service/ScreeningService.java +++ b/src/main/java/com/ccsens/carbasics/service/ScreeningService.java @@ -1,27 +1,36 @@ package com.ccsens.carbasics.service; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.Snowflake; import cn.hutool.core.util.ObjectUtil; import com.ccsens.carbasics.bean.dto.QuestionnaireDto; import com.ccsens.carbasics.bean.po.QuestionnaireDetail; +import com.ccsens.carbasics.bean.po.QuestionnaireRecord; import com.ccsens.carbasics.bean.vo.QuestionnaireVo; import com.ccsens.carbasics.persist.dao.OrganizationPositionDao; import com.ccsens.carbasics.persist.dao.QuestionnaireDao; import com.ccsens.carbasics.persist.dao.QuestionnaireDetailDao; +import com.ccsens.carbasics.persist.dao.QuestionnaireRecordDao; import com.ccsens.carbasics.util.Constant; import com.ccsens.carbasics.util.DefaultCodeError; import com.ccsens.carbasics.util.ScreeningQrCodeUtil; +import com.ccsens.util.PoiUtil; import com.ccsens.util.PropUtil; -import com.ccsens.util.QrCodeUtil; import com.ccsens.util.exception.BaseException; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import lombok.extern.slf4j.Slf4j; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; -import java.nio.charset.StandardCharsets; +import java.io.File; +import java.io.FileOutputStream; +import java.io.OutputStream; import java.util.ArrayList; import java.util.List; @@ -40,7 +49,11 @@ public class ScreeningService implements IScreeningService { @Resource private QuestionnaireDetailDao questionnaireDetailDao; @Resource + private QuestionnaireRecordDao questionnaireRecordDao; + @Resource private QuestionnaireDao questionnaireDao; + @Resource + private Snowflake snowflake; @Override @@ -50,6 +63,13 @@ public class ScreeningService implements IScreeningService { if(ObjectUtil.isNull(detail)){ throw new BaseException(DefaultCodeError.QUESTIONNAIRE_DETAIL_ERROR); } + //添加提交时间 + QuestionnaireRecord questionnaireRecord = new QuestionnaireRecord(); + questionnaireRecord.setId(snowflake.nextId()); + questionnaireRecord.setQuestionnaireDetailId(param.getDetailId()); + questionnaireRecord.setQuestionCode(Constant.SCWJ_SUBMIT_TIME); + questionnaireRecord.setAnswer(System.currentTimeMillis() + ""); + questionnaireRecordDao.insertSelective(questionnaireRecord); //修改提交状态 QuestionnaireDetail questionnaireDetail = new QuestionnaireDetail(); questionnaireDetail.setId(param.getDetailId()); @@ -102,4 +122,121 @@ public class ScreeningService implements IScreeningService { } return centerWorkloadList; } + + @Override + public PageInfo backQueryScreening(QuestionnaireDto.BackQueryScreening param, Long userId) { + //TODO 验证当前用户的权限 + //获取当前时间 + long now = System.currentTimeMillis(); + PageHelper.startPage(param.getPageNum(),param.getPageSize()); + //查找问卷信息 + List queryScreenings = questionnaireDao.backQueryScreening(param,now); + //分页返回 + return new PageInfo<>(queryScreenings); + } + + @Override + public void backUpdateScreening(QuestionnaireDto.BackUpdateScreening param, Long userId) { + //TODO 验证当前用户的权限 + if(CollectionUtil.isNotEmpty(param.getDetailIds())){ + param.getDetailIds().forEach(detailId -> { + //查找问卷详情 + QuestionnaireDetail questionnaireDetail = questionnaireDetailDao.selectByPrimaryKey(detailId); + if(ObjectUtil.isNull(questionnaireDetail)){ + throw new BaseException(DefaultCodeError.QUESTIONNAIRE_DETAIL_ERROR); + } + //修改信息 + QuestionnaireDetail detail = new QuestionnaireDetail(); + detail.setId(detailId); + detail.setPciStatus(param.getHealthTracking()); + questionnaireDetailDao.updateByPrimaryKeySelective(detail); + }); + } + } + + @Override + public String backExport(QuestionnaireDto.BackQueryScreening param, Long userId) throws Exception{ + //获取当前时间 + long now = System.currentTimeMillis(); + //查找问卷信息 + List queryScreenings = questionnaireDao.backQueryScreening(param,now); + //生成导出的表格内容 + List> list = generateExcelCell(queryScreenings); + //生成表格 + XSSFWorkbook wb = new XSSFWorkbook(); + PoiUtil.exportWB("脑卒中高危人群筛查数据", list, wb); + //生成文件 + String fileName = "exportExcel/" + DateUtil.today() + "/脑卒中高危人群筛查数据_" + System.currentTimeMillis() + ".xlsx"; + String path = PropUtil.path + fileName; + File tmpFile = new File(path); + if (!tmpFile.getParentFile().exists()) { + tmpFile.getParentFile().mkdirs(); + } + log.info("生成流"); + OutputStream stream = new FileOutputStream(tmpFile); + log.info("写入wbs"); + wb.write(stream); + stream.close(); + wb.close(); + + return PropUtil.imgDomain + fileName; + } + + private List> generateExcelCell(List queryScreenings) { + List> list = new ArrayList<>(); + + //表头 + List title = new ArrayList<>(); + title.add(new PoiUtil.PoiUtilCell("序号")); + title.add(new PoiUtil.PoiUtilCell("姓名")); + title.add(new PoiUtil.PoiUtilCell("身份证号")); + title.add(new PoiUtil.PoiUtilCell("性别")); + title.add(new PoiUtil.PoiUtilCell("出生日期")); + title.add(new PoiUtil.PoiUtilCell("年龄")); + title.add(new PoiUtil.PoiUtilCell("手机号")); + title.add(new PoiUtil.PoiUtilCell("备注")); + title.add(new PoiUtil.PoiUtilCell("高血压")); + title.add(new PoiUtil.PoiUtilCell("血脂情况")); + title.add(new PoiUtil.PoiUtilCell("糖尿病")); + title.add(new PoiUtil.PoiUtilCell("心房颤动")); + title.add(new PoiUtil.PoiUtilCell("吸烟")); + title.add(new PoiUtil.PoiUtilCell("体重")); + title.add(new PoiUtil.PoiUtilCell("运动")); + title.add(new PoiUtil.PoiUtilCell("卒中家族史")); + title.add(new PoiUtil.PoiUtilCell("既往脑卒中病史")); + title.add(new PoiUtil.PoiUtilCell("既往短暂脑缺血病史")); + title.add(new PoiUtil.PoiUtilCell("危险等级")); + title.add(new PoiUtil.PoiUtilCell("健康跟踪")); + list.add(title); + //填写内容 + if(CollectionUtil.isNotEmpty(queryScreenings)){ + int sequence = 1; + for (QuestionnaireVo.BackQueryScreening screenings : queryScreenings) { + List detail = new ArrayList<>(); + detail.add(new PoiUtil.PoiUtilCell(sequence++ + "")); + detail.add(new PoiUtil.PoiUtilCell(screenings.getName())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getIdCard())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getSex())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getBirthday())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getAge())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getPhone())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getRemark())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getHypertension())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getBloodFat())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getDiabetes())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getFibrillation())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getSmoke())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getWeight())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getSports())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getApoplexyFamily())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getCerebralStroke())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getCerebralIschemia())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getTypeString())); + detail.add(new PoiUtil.PoiUtilCell(screenings.getHealthTrackingString())); + list.add(detail); + } + } + return list; + } + } diff --git a/src/main/java/com/ccsens/carbasics/util/Constant.java b/src/main/java/com/ccsens/carbasics/util/Constant.java index 8b6103f..395c946 100644 --- a/src/main/java/com/ccsens/carbasics/util/Constant.java +++ b/src/main/java/com/ccsens/carbasics/util/Constant.java @@ -36,7 +36,6 @@ public class Constant { public static final Byte CLOSED_STATUS = 0; /**分诊台*/ public static final Byte TYPE_TRIAGE_TABLE = 0; - } public static final class TimeCheck{ @@ -761,4 +760,8 @@ public class Constant { public static final String HOSPITAL_LIST_KEY = "hospital_list_key"; } + /** + * 提交高危筛查问卷的时间 + */ + public static final String SCWJ_SUBMIT_TIME = "SCWJ-SUBMIT"; } diff --git a/src/main/resources/mapper_dao/QuestionnaireDao.xml b/src/main/resources/mapper_dao/QuestionnaireDao.xml index e34c85b..7ccf858 100644 --- a/src/main/resources/mapper_dao/QuestionnaireDao.xml +++ b/src/main/resources/mapper_dao/QuestionnaireDao.xml @@ -175,9 +175,9 @@ r.answer, CASE 1 WHEN IF(LENGTH(r.answer) - LENGTH(REPLACE(r.answer,",","")) >= 2, 1, 0 ) THEN '1' - WHEN IF((FIND_IN_SET('09',r.answer) > -1) or (FIND_IN_SET('10',r.answer) > -1), 1, 0) THEN '1' - WHEN IF((FIND_IN_SET('01',r.answer) > -1) or (FIND_IN_SET('03',r.answer) > -1) or (FIND_IN_SET('04',r.answer) > -1), 1, 0) THEN '2' - WHEN IF((FIND_IN_SET('02',r.answer) > -1) or (FIND_IN_SET('05',r.answer) > -1) or (FIND_IN_SET('06',r.answer) > -1) or (FIND_IN_SET('07',r.answer) > -1) or (FIND_IN_SET('08',r.answer) > -1) , 1, 0) THEN '3' + WHEN IF((FIND_IN_SET('09',r.answer) > 0) or (FIND_IN_SET('10',r.answer) > 0), 1, 0) THEN '1' + WHEN IF((FIND_IN_SET('01',r.answer) > 0) or (FIND_IN_SET('03',r.answer) > 0) or (FIND_IN_SET('04',r.answer) > 0), 1, 0) THEN '2' + WHEN IF((FIND_IN_SET('02',r.answer) > 0) or (FIND_IN_SET('05',r.answer) > 0) or (FIND_IN_SET('06',r.answer) > 0) or (FIND_IN_SET('07',r.answer) > 0) or (FIND_IN_SET('08',r.answer) > 0) , 1, 0) THEN '3' ELSE '0' END as type FROM @@ -205,27 +205,25 @@ + \ No newline at end of file