فهرست منبع

Merge branch 'dev/20220111_v2.1.6_演示版_历史评分及操作日志'

zhanghang 3 سال پیش
والد
کامیت
b516b4e1a7

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 10 - 0
doc/040.20211228_2.1.5/qc_initv2.1.5.sql


+ 15 - 0
doc/041.20220113_v2.1.6_演示版_历史评分及操作日志/qc_initv2.1.6.sql

@@ -0,0 +1,15 @@
+
+use `qc`;
+-- 执行前请看注意事项!
+-- 执行后还需要给操作账号操作日志菜单权限
+-- 注意
+/**
+演示菜单添加操作日志
+ */
+
+INSERT INTO `sys_menu` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `parent_id`, `code`, `show_status`, `maintain_status`, `order_no`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '操作日志', '-1', 'YH-CZRZ', '1', '1', '11', '用户-操作日志');
+SET @idMenu =@@identity;
+
+INSERT INTO `sys_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `name`, `code`, `permissionUrl`, `method`, `descritpion`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', '操作日志', '', '/qc/behospitalInfo/operationLog', 'ALL', '操作日志', '用户-操作日志');
+SET @idPermission =@@identity;
+INSERT INTO `sys_menu_permission` ( `is_deleted`, `gmt_create`, `gmt_modified`, `creator`, `modifier`, `menu_id`, `permission_id`, `order_nu`, `remark`) VALUES ( 'N', '1970-01-01 12:00:00', '1970-01-01 12:00:00', '0', '0', @idMenu, @idPermission, NULL, '用户-操作日志');

+ 2 - 0
src/main/java/com/diagbot/config/ResourceServerConfigurer.java

@@ -289,6 +289,8 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/qc/analysisDept/getEntryDefectImproveByDeptExport").permitAll()
                 .antMatchers("/qc/analysisDept/getEntryDefectImproveInnerDept").permitAll()
                 .antMatchers("/qc/analysisDept/getDefectImproveInnerByDeptExport").permitAll()
+                .antMatchers("/qc/behospitalInfo/historyAnalyze").permitAll()
+                .antMatchers("/qc/behospitalInfo/operationLog").permitAll()
                 .antMatchers("/**").authenticated();
         //                .antMatchers("/**").permitAll();
     }

+ 2 - 0
src/main/java/com/diagbot/config/security/UrlAccessDecisionManager.java

@@ -341,6 +341,8 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/qc/analysisDept/getEntryDefectImproveByDeptExport", request)
                 || matchers("/qc/analysisDept/getEntryDefectImproveInnerDept", request)
                 || matchers("/qc/analysisDept/getDefectImproveInnerByDeptExport", request)
+                || matchers("/qc/behospitalInfo/historyAnalyze", request)
+                || matchers("/qc/behospitalInfo/operationLog", request)
                 || matchers("/", request)) {
             return true;
         }

+ 38 - 0
src/main/java/com/diagbot/dto/QcCasesHistoryDTO.java

@@ -0,0 +1,38 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @Description:
+ * @author: gaodm
+ * @time: 2020/4/12 13:58
+ */
+@Getter
+@Setter
+public class QcCasesHistoryDTO {
+
+    /**
+     * 记录修改时间,如果时间是1970年则表示纪录未修改
+     */
+    private Date gmtModified;
+
+    /**
+     * 评分人
+     */
+    private String name;
+
+    /**
+     * 模块总分
+     */
+    private BigDecimal scoreRes;
+
+    /**
+     * 病历等级
+     */
+    private String level;
+
+}

+ 52 - 0
src/main/java/com/diagbot/entity/operationLog.java

@@ -0,0 +1,52 @@
+package com.diagbot.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 医院科室信息
+ * </p>
+ *
+ * @author gaodm
+ * @since 2020-04-27
+ */
+@Data
+public class operationLog implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+    /**
+     * 序号
+     */
+    private String id;
+    /**
+     * 操作时间
+     */
+    private String gmtCreate;
+    /**
+     * 操作类型
+     */
+    private String Type;
+    /**
+     * 操作模块
+     */
+    private String module;
+    /**
+     * 操作账号
+     */
+    private String account;
+    /**
+     * IP地址
+     */
+    private String IPAddress;
+    /**
+     * 操作内容
+     */
+    private String content;
+
+
+}

+ 47 - 1
src/main/java/com/diagbot/facade/BehospitalInfoFacade.java

@@ -18,6 +18,7 @@ import com.diagbot.service.impl.MedClickInfoServiceImpl;
 import com.diagbot.service.impl.StrInformedConsentServiceImpl;
 import com.diagbot.util.*;
 import com.diagbot.vo.*;
+import com.fasterxml.jackson.databind.exc.InvalidFormatException;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 import org.apache.commons.lang3.StringUtils;
@@ -28,12 +29,18 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import javax.servlet.http.HttpServletResponse;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.text.ParseException;
 import java.time.LocalDateTime;
 import java.util.*;
 import java.util.stream.Collectors;
 
+import static com.diagbot.util.ReadExcelUtils.read2007Xlsx;
+
 /**
  * @Description:
  * @author: zhoutg
@@ -154,7 +161,6 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
     QcresultDetailFacade qcresultDetailFacade;
 
 
-
     /**
      * 分页
      *
@@ -2580,4 +2586,44 @@ public class BehospitalInfoFacade extends BehospitalInfoServiceImpl {
         }
         return qcresultDetails;
     }
+
+    /**
+     * 评分历史
+     * @param historyAnalyzePageVO
+     * @return
+     */
+    public IPage<QcCasesHistoryDTO> getHistoryAnalyze(HistoryAnalyzePageVO historyAnalyzePageVO) {
+        Long hospitalID =Long.valueOf(SysUserUtils.getCurrentHospitalID());
+        historyAnalyzePageVO.setHospitalId(hospitalID);
+        IPage<QcCasesHistoryDTO> medQcresultResultList = qcresultInfoFacade.getMedQcresultResultList(historyAnalyzePageVO);
+        return medQcresultResultList;
+    }
+
+    /**
+     * 操作日志
+     * @param behospitalCode
+     * @throws InvalidFormatException
+     * @throws IOException
+     * @throws ParseException
+     */
+    public List<operationLog> getOperationLog(String behospitalCode){
+        String fullFileName = "src\\main\\resources\\操作日志.xlsx";
+        List<operationLog> list = new ArrayList<>();
+        try {
+            InputStream is = new FileInputStream(fullFileName);
+            list = read2007Xlsx(is);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+        System.out.println("size==>" + list.size());
+        return list;
+        //  获取resource目录下的 41473.xlsx 文件:
+//        String resource = "41473.xlsx";
+//        ClassPathResource classPathResource = new ClassPathResource(resource);
+//        List<Order> list = read2007Xlsx(classPathResource.getInputStream());
+//        System.out.println("size==>" + list.size());
+    }
+
+
+
 }

+ 50 - 1
src/main/java/com/diagbot/facade/QcModuleInfoFacade.java

@@ -1,5 +1,6 @@
 package com.diagbot.facade;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.dto.GetModuleInfoOneDTO;
 import com.diagbot.dto.QcModuleDetailDTO;
@@ -13,6 +14,7 @@ import com.diagbot.service.impl.QcModuleInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.EntityUtil;
 import com.diagbot.util.ListUtil;
+import com.diagbot.util.StringUtil;
 import com.diagbot.vo.GetModuleInfoOneVO;
 import com.diagbot.vo.GetModuleMapVO;
 import com.diagbot.vo.QuestionIdsVO;
@@ -38,6 +40,8 @@ public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
     QcModuleDetailFacade qcModuleDetailFacade;
     @Autowired
     QcQuestionFacade qcQuestionFacade;
+    @Autowired
+    SysHospitalSetFacade sysHospitalSetFacade;
 
     /**
      * 根据id获取模板信息
@@ -95,10 +99,55 @@ public class QcModuleInfoFacade extends QcModuleInfoServiceImpl {
             return new HashMap<>();
         }
         GetModuleInfoOneVO getModuleInfoOneVO = new GetModuleInfoOneVO();
+        String pageShowFlag = sysHospitalSetFacade.getValue(getModuleMapVO.getHospitalId(), "page_show_flag");
+        String pageShowConfig = sysHospitalSetFacade.getValue(getModuleMapVO.getHospitalId(), "page_show_config");
         for (Long id : ids) {
             getModuleInfoOneVO.setModuleId(id);
-            res.put(id, getByIdFac(getModuleInfoOneVO));
+            GetModuleInfoOneDTO oneDTO = getByIdFac(getModuleInfoOneVO);
+            //原文书(超链接)配置
+            originalDocumentConfigure(oneDTO, pageShowFlag, pageShowConfig, getModuleMapVO.getHospitalId());
+            res.put(id, oneDTO);
         }
         return res;
     }
+
+    private void originalDocumentConfigure(GetModuleInfoOneDTO oneDTO, String pageShowFlag, String pageShowConfig, Long hospitalId) {
+        if (StringUtil.isNotEmpty(pageShowFlag) && StringUtil.isNotEmpty(pageShowConfig)) {
+            JSONObject pageShowFlagJSON = JSONObject.parseObject(pageShowFlag);
+            JSONObject pageShowConfigJSON = JSONObject.parseObject(pageShowConfig);
+            try {
+                if (pageShowFlagJSON.containsKey(oneDTO.getModeId().toString())) {
+                    if (pageShowFlagJSON.getBoolean(oneDTO.getModeId().toString())) {
+                        QcModuleDetailDTO qcModuleDetailDTO = createQcModuleDetailDTO(pageShowConfigJSON, hospitalId, oneDTO.getModeId());
+                        oneDTO.getModuleDetail().get(0).add(0,qcModuleDetailDTO);
+                    }
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    private QcModuleDetailDTO createQcModuleDetailDTO(JSONObject pageShowConfigJSON, Long hospitalId, Long modeId) {
+        QcModuleDetailDTO qcModuleDetailDTO = new QcModuleDetailDTO();
+        QuestionDTO questionDTO = new QuestionDTO();
+        qcModuleDetailDTO.setQuestionId(modeId*-1);
+        qcModuleDetailDTO.setGroupId(pageShowConfigJSON.getInteger("groupId"));
+
+        questionDTO.setId(modeId*-1);
+        questionDTO.setName("");
+        questionDTO.setVal(pageShowConfigJSON.getString("val"));
+        questionDTO.setTagName("");
+        questionDTO.setControlType(pageShowConfigJSON.getInteger("controlType"));
+        questionDTO.setTagType(pageShowConfigJSON.getInteger("tagType"));
+        questionDTO.setHospitalId(hospitalId);
+        questionDTO.setModeId(modeId);
+        questionDTO.setRetract(pageShowConfigJSON.getInteger("retract"));
+        questionDTO.setAddLine(pageShowConfigJSON.getInteger("addLine"));
+        questionDTO.setMonoLine(pageShowConfigJSON.getInteger("monoLine"));
+        questionDTO.setBold(pageShowConfigJSON.getInteger("bold"));
+        questionDTO.setPosition(pageShowConfigJSON.getInteger("position"));
+        qcModuleDetailDTO.setQuestionDTO(questionDTO);
+        return qcModuleDetailDTO;
+    }
 }

+ 12 - 7
src/main/java/com/diagbot/facade/QcresultInfoFacade.java

@@ -2,11 +2,12 @@ package com.diagbot.facade;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.dto.AlgorithmDTO;
 import com.diagbot.dto.AnalyzeDTO;
+import com.diagbot.dto.QcCasesHistoryDTO;
 import com.diagbot.dto.QcResultDTO;
 import com.diagbot.entity.BehospitalInfo;
-import com.diagbot.entity.MedCheckInfo;
 import com.diagbot.entity.MedQcresultCases;
 import com.diagbot.entity.QcresultDetail;
 import com.diagbot.entity.QcresultInfo;
@@ -21,12 +22,7 @@ import com.diagbot.util.DateUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.util.SysUserUtils;
-import com.diagbot.vo.AlgorithmVO;
-import com.diagbot.vo.AnalyzeVO;
-import com.diagbot.vo.GetDetailVO;
-import com.diagbot.vo.MedQcresultCasesVO;
-import com.diagbot.vo.QcResultAlgVO;
-import com.diagbot.vo.QcresultVO;
+import com.diagbot.vo.*;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Component;
@@ -425,4 +421,13 @@ public class QcresultInfoFacade extends QcresultInfoServiceImpl {
         }
         return res;
     }
+
+    /**
+     * 历史评分
+     * @param historyAnalyzePageVO
+     * @return
+     */
+    public IPage<QcCasesHistoryDTO> getMedQcresultResultList(HistoryAnalyzePageVO historyAnalyzePageVO){
+        return getMedQcresultResult(historyAnalyzePageVO);
+    }
 }

+ 5 - 6
src/main/java/com/diagbot/facade/RecordCheckFacade.java

@@ -31,9 +31,7 @@ import com.google.common.collect.Maps;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -204,13 +202,14 @@ public class RecordCheckFacade {
             }
         });
         Long hospitalId = Long.parseLong(SysUserUtils.getCurrentHospitalID());
-        List<Integer> valus = medBehospitalTypeServiceImpl.list(new QueryWrapper<MedBehospitalType>()
+        Map<String,Integer> valueMaps = medBehospitalTypeServiceImpl.list(new QueryWrapper<MedBehospitalType>()
                 .eq("hospital_id", hospitalId)
                 .eq("is_deleted", IsDeleteEnum.N.getKey())
                 .isNotNull("value")
-                .groupBy("value")).stream().map(MedBehospitalType::getValue).collect(Collectors.toList());
+                .select("behospital_type,value")
+                .groupBy("value")).stream().collect(Collectors.toMap(MedBehospitalType::getBehospitalType, MedBehospitalType::getValue,(k1, k2) -> k1,LinkedHashMap::new));
         out.put("source", checkTypes);
-        out.put("value", valus);
+        out.put("value", valueMaps);
         return out;
     }
 }

+ 9 - 14
src/main/java/com/diagbot/mapper/QcresultInfoMapper.java

@@ -2,24 +2,12 @@ package com.diagbot.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.diagbot.dto.AverageStatisticsDTO;
-import com.diagbot.dto.DeptEntryNumDTO;
-import com.diagbot.dto.DeptNumDTO;
-import com.diagbot.dto.EntryNumDTO;
-import com.diagbot.dto.EntryNumGroupDTO;
-import com.diagbot.dto.NumDTO;
-import com.diagbot.dto.QcResultPercentDTO;
+import com.diagbot.dto.*;
 import com.diagbot.entity.QcresultInfo;
-import com.diagbot.vo.FilterPageByDeptVO;
-import com.diagbot.vo.FilterPageVO;
-import com.diagbot.vo.FilterPageXYVO;
-import com.diagbot.vo.FilterVO;
-import com.diagbot.vo.QcresultFilterVO;
+import com.diagbot.vo.*;
 import org.apache.ibatis.annotations.Param;
 
-import java.util.ArrayList;
 import java.util.List;
-import java.util.Map;
 import java.util.Set;
 
 /**
@@ -213,4 +201,11 @@ public interface QcresultInfoMapper extends BaseMapper<QcresultInfo> {
      * @return
      */
     public List<DeptNumDTO> qcResultLevelPercent(FilterVO filterVO);
+
+    /**
+     * 历史评分
+     * @param historyAnalyzePageVO
+     * @return
+     */
+    public IPage<QcCasesHistoryDTO> getMedQcresultResult(HistoryAnalyzePageVO historyAnalyzePageVO);
 }

+ 9 - 11
src/main/java/com/diagbot/service/QcresultInfoService.java

@@ -2,18 +2,9 @@ package com.diagbot.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
-import com.diagbot.dto.AverageStatisticsDTO;
-import com.diagbot.dto.DeptEntryNumDTO;
-import com.diagbot.dto.DeptNumDTO;
-import com.diagbot.dto.EntryNumDTO;
-import com.diagbot.dto.EntryNumGroupDTO;
-import com.diagbot.dto.NumDTO;
-import com.diagbot.dto.QcResultPercentDTO;
+import com.diagbot.dto.*;
 import com.diagbot.entity.QcresultInfo;
-import com.diagbot.vo.FilterPageByDeptVO;
-import com.diagbot.vo.FilterPageVO;
-import com.diagbot.vo.FilterVO;
-import com.diagbot.vo.QcresultFilterVO;
+import com.diagbot.vo.*;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -188,4 +179,11 @@ public interface QcresultInfoService extends IService<QcresultInfo> {
      * @return
      */
     public List<DeptNumDTO> qcResultLevelPercent(FilterVO filterVO);
+
+    /**
+     * 历史评分
+     * @param historyAnalyzePageVO
+     * @return
+     */
+    public IPage<QcCasesHistoryDTO> getMedQcresultResult(HistoryAnalyzePageVO historyAnalyzePageVO);
 }

+ 12 - 12
src/main/java/com/diagbot/service/impl/QcresultInfoServiceImpl.java

@@ -2,22 +2,12 @@ package com.diagbot.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.diagbot.dto.AverageStatisticsDTO;
-import com.diagbot.dto.DeptEntryNumDTO;
-import com.diagbot.dto.DeptNumDTO;
-import com.diagbot.dto.EntryNumDTO;
-import com.diagbot.dto.EntryNumGroupDTO;
-import com.diagbot.dto.NumDTO;
-import com.diagbot.dto.QcResultPercentDTO;
+import com.diagbot.dto.*;
 import com.diagbot.entity.QcresultInfo;
 import com.diagbot.mapper.QcresultInfoMapper;
 import com.diagbot.service.QcresultInfoService;
-import com.diagbot.vo.FilterPageByDeptVO;
-import com.diagbot.vo.FilterPageVO;
-import com.diagbot.vo.FilterVO;
-import com.diagbot.vo.QcresultFilterVO;
+import com.diagbot.vo.*;
 import org.apache.commons.collections4.CollectionUtils;
-import org.apache.commons.lang.StringUtils;
 import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Service;
 
@@ -289,4 +279,14 @@ public class QcresultInfoServiceImpl extends ServiceImpl<QcresultInfoMapper, Qcr
     public List<DeptNumDTO> qcResultLevelPercent(FilterVO filterVO) {
         return baseMapper.qcResultLevelPercent(filterVO);
     }
+
+    /**
+     * 历史评分
+     * @param historyAnalyzePageVO
+     * @return
+     */
+    @Override
+    public IPage<QcCasesHistoryDTO> getMedQcresultResult(HistoryAnalyzePageVO historyAnalyzePageVO){
+        return baseMapper.getMedQcresultResult(historyAnalyzePageVO);
+    }
 }

+ 55 - 0
src/main/java/com/diagbot/util/ReadExcelUtils.java

@@ -0,0 +1,55 @@
+package com.diagbot.util;
+
+import com.diagbot.entity.operationLog;
+import com.fasterxml.jackson.databind.exc.InvalidFormatException;
+import org.apache.poi.ss.usermodel.CellType;
+import org.apache.poi.xssf.usermodel.XSSFRow;
+import org.apache.poi.xssf.usermodel.XSSFSheet;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.text.ParseException;
+import java.util.ArrayList;
+import java.util.List;
+
+public class ReadExcelUtils {
+    public static List<operationLog> read2007Xlsx(InputStream in) throws IOException, InvalidFormatException, ParseException {
+
+        List<operationLog> list = new ArrayList<>();
+        XSSFWorkbook xWorkbook = new XSSFWorkbook(in);
+        // Read the Sheet
+        XSSFSheet xssfSheet = xWorkbook.getSheetAt(0);
+
+        // Read the Row
+        for (int rowNum = 1; rowNum <= xssfSheet.getLastRowNum(); rowNum++) {
+            XSSFRow xssfRow = xssfSheet.getRow(rowNum);
+            if (xssfRow != null) {
+                operationLog operationLog =new operationLog();
+                // 单元格从 0 开始
+                xssfRow.getCell(0).setCellType(CellType.STRING);
+                xssfRow.getCell(1).setCellType(CellType.STRING);
+                xssfRow.getCell(2).setCellType(CellType.STRING);
+                xssfRow.getCell(3).setCellType(CellType.STRING);
+                xssfRow.getCell(4).setCellType(CellType.STRING);
+                xssfRow.getCell(5).setCellType(CellType.STRING);
+                xssfRow.getCell(6).setCellType(CellType.STRING);
+                operationLog.setId(xssfRow.getCell(0).getStringCellValue());
+                operationLog.setGmtCreate(xssfRow.getCell(1).getStringCellValue());
+                operationLog.setType(xssfRow.getCell(2).getStringCellValue());
+                operationLog.setModule(xssfRow.getCell(3).getStringCellValue());
+                operationLog.setAccount(xssfRow.getCell(4).getStringCellValue());
+                operationLog.setIPAddress(xssfRow.getCell(5).getStringCellValue());
+                operationLog.setContent(xssfRow.getCell(6).getStringCellValue());
+                list.add(operationLog);
+
+            }
+
+        }
+
+        xWorkbook.close();
+        return list;
+    }
+
+}

+ 28 - 0
src/main/java/com/diagbot/vo/HistoryAnalyzePageVO.java

@@ -0,0 +1,28 @@
+package com.diagbot.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 住院病历信息
+ * </p>
+ *
+ * @author zhoutg
+ * @since 2020-04-13
+ */
+@Data
+public class HistoryAnalyzePageVO extends Page implements Serializable {
+    /**
+     * 医院ID
+     */
+    @ApiModelProperty(hidden = true)
+    private Long hospitalId;
+    /**
+     * 病人住院ID
+     */
+    private String behospitalCode;
+}

+ 18 - 1
src/main/java/com/diagbot/web/BehospitalInfoController.java

@@ -3,7 +3,7 @@ package com.diagbot.web;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.*;
-import com.diagbot.entity.QcCasesRelevanceEntry;
+import com.diagbot.entity.operationLog;
 import com.diagbot.facade.BehospitalInfoFacade;
 import com.diagbot.facade.QcresultInfoFacade;
 import com.diagbot.vo.*;
@@ -284,5 +284,22 @@ public class BehospitalInfoController {
         return RespDTO.onSuc(behospitalInfoFacade.analyzeCds(analyzeCdsVO));
     }
 
+    @ApiOperation(value = "历史评分[by:zhanghang]",
+            notes = "behospitalCode:病人住院序号<br>")
+    @PostMapping("/historyAnalyze")
+    @SysLogger("historyAnalyze")
+    @Transactional
+    public RespDTO<IPage<QcCasesHistoryDTO>> historyAnalyze(@RequestBody  HistoryAnalyzePageVO historyAnalyzePageVO) {
+        return RespDTO.onSuc(behospitalInfoFacade.getHistoryAnalyze(historyAnalyzePageVO));
+    }
+
+    @ApiOperation(value = "操作日志[by:zhanghang]",
+            notes = "")
+    @PostMapping("/operationLog")
+    @SysLogger("operationLog")
+    @Transactional
+    public RespDTO<List<operationLog>> operationLog(@RequestBody String behospitalCode)  {
+        return RespDTO.onSuc(behospitalInfoFacade.getOperationLog(behospitalCode));
+    }
 
 }

+ 23 - 0
src/main/resources/mapper/QcresultInfoMapper.xml

@@ -2440,4 +2440,27 @@
         ) t2
         )t
     </select>
+    <select id="getMedQcresultResult" resultType="com.diagbot.dto.QcCasesHistoryDTO">
+            SELECT
+                a.gmt_modified,
+                a.behospital_code,
+                a.score_res,
+                a.`level`,
+              IFNULL(b.linkman,"系统评分") as name
+            FROM
+                (
+                    SELECT
+                        a.gmt_modified,
+                        a.behospital_code,
+                        a.score_res,
+                        a.`level`,
+                        a.modifier
+                    FROM
+                        med_qcresult_info a
+                    WHERE
+                        a.behospital_code = #{behospitalCode}
+                    AND a.hospital_id = #{hospitalId}
+                ) a
+            LEFT JOIN sys_user b ON a.modifier = b.id
+    </select>
 </mapper>

BIN
src/main/resources/操作日志.xlsx