浏览代码

辅检术语映射维护

zhaops 4 年之前
父节点
当前提交
03ada5e092

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

@@ -49,6 +49,13 @@ public class ResourceServerConfigurer extends ResourceServerConfigurerAdapter {
                 .antMatchers("/tran/lisConfig/deleteRecords").permitAll()
                 .antMatchers("/tran/lisConfig/getPage").permitAll()
                 .antMatchers("/tran/lisConfig/importExcel").permitAll()
+                .antMatchers("/tran/pacsConfig/isExistRecord").permitAll()
+                .antMatchers("/tran/pacsConfig/saveOrUpdateRecord").permitAll()
+                .antMatchers("/tran/pacsConfig/saveOrUpdateRecords").permitAll()
+                .antMatchers("/tran/pacsConfig/deleteRecord").permitAll()
+                .antMatchers("/tran/pacsConfig/deleteRecords").permitAll()
+                .antMatchers("/tran/pacsConfig/getPage").permitAll()
+                .antMatchers("/tran/pacsConfig/importExcel").permitAll()
                 .antMatchers("/sys/versionInfo/getVersionInfoAlls").permitAll()
                 .antMatchers("/sys/disclaimerInfo/getDisclaimerInfo").permitAll()
                 .antMatchers("/sys/mr/createMr").permitAll()

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

@@ -92,6 +92,13 @@ public class UrlAccessDecisionManager implements AccessDecisionManager {
                 || matchers("/tran/lisConfig/deleteRecords", request)
                 || matchers("/tran/lisConfig/getPage", request)
                 || matchers("/tran/lisConfig/importExcel", request)
+                || matchers("/tran/pacsConfig/isExistRecord", request)
+                || matchers("/tran/pacsConfig/saveOrUpdateRecord", request)
+                || matchers("/tran/pacsConfig/saveOrUpdateRecords", request)
+                || matchers("/tran/pacsConfig/deleteRecord", request)
+                || matchers("/tran/pacsConfig/deleteRecords", request)
+                || matchers("/tran/pacsConfig/getPage", request)
+                || matchers("/tran/pacsConfig/importExcel", request)
                 || matchers("/sys/versionInfo/getVersionInfoAlls", request)
                 || matchers("/sys/disclaimerInfo/getDisclaimerInfo", request)
                 || matchers("/sys/mr/createMr", request)

+ 4 - 0
src/main/java/com/diagbot/entity/PacsConfig.java

@@ -1,5 +1,6 @@
 package com.diagbot.entity;
 
+import cn.afterturn.easypoi.excel.annotation.Excel;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
@@ -59,16 +60,19 @@ public class PacsConfig implements Serializable {
     /**
      * his名称
      */
+    @Excel(name="HIS名称")
     private String hisName;
 
     /**
      * 标准名
      */
+    @Excel(name = "标准名称")
     private String uniqueName;
 
     /**
      * 标准编码
      */
+    @Excel(name="标准编码")
     private String uniqueCode;
 
     public Long getId() {

+ 4 - 2
src/main/java/com/diagbot/facade/LisConfigFacade.java

@@ -234,8 +234,10 @@ public class LisConfigFacade extends LisConfigServiceImpl {
             lisConfigList.forEach(lisConfig -> {
                 lisConfig.setIsDeleted(IsDeleteEnum.N.getKey());
                 lisConfig.setHospitalId(Long.valueOf(hospitalId));
-                lisConfig.setCreator(userId);
-                lisConfig.setGmtCreate(now);
+                if (lisConfig.getId() == null) {
+                    lisConfig.setCreator(userId);
+                    lisConfig.setGmtCreate(now);
+                }
                 lisConfig.setModifier(userId);
                 lisConfig.setGmtModified(now);
             });

+ 248 - 1
src/main/java/com/diagbot/facade/PacsConfigFacade.java

@@ -1,6 +1,31 @@
 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.entity.PacsConfig;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.service.PacsConfigService;
+import com.diagbot.util.DateUtil;
+import com.diagbot.util.EntityUtil;
+import com.diagbot.util.ExcelUtils;
+import com.diagbot.util.ListUtil;
+import com.diagbot.util.StringUtil;
+import com.diagbot.util.SysUserUtils;
+import com.diagbot.vo.IdListVO;
+import com.diagbot.vo.IdVO;
+import com.diagbot.vo.PacsConfigListVO;
+import com.diagbot.vo.PacsConfigPageVO;
+import com.google.common.collect.Lists;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 /**
  * @Description:
@@ -8,5 +33,227 @@ import org.springframework.stereotype.Component;
  * @time: 2020/7/29 15:03
  */
 @Component
-public class PacsConfigFacade {
+public class PacsConfigFacade{
+    @Autowired
+    private PacsConfigService pacsConfigService;
+
+    /**
+     * 判断是否已存在
+     *
+     * @param pacsConfig
+     * @return
+     */
+    public Boolean isExistRecord(PacsConfig pacsConfig) {
+        String hospitalId = SysUserUtils.getCurrentHospitalID();
+        QueryWrapper<PacsConfig> queryWrapper = new QueryWrapper<>();
+        PacsConfig oldRecord = new PacsConfig();
+        if (pacsConfig.getId() != null) {
+            oldRecord = pacsConfigService.getById(pacsConfig.getId());
+            if (oldRecord != null && oldRecord.getIsDeleted().equals(IsDeleteEnum.N.getKey())) {
+                return true;
+            }
+        } else if (StringUtil.isNotBlank(pacsConfig.getHisName())) {
+            queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                    .eq("hospital_id", Long.valueOf(hospitalId))
+                    .eq("his_name", pacsConfig.getHisName());
+            oldRecord = pacsConfigService.getOne(queryWrapper);
+            if (oldRecord != null) {
+                return true;
+            }
+        }
+        return false;
+    }
+
+    /**
+     * 保存记录-单条
+     *
+     * @param pacsConfig
+     * @return
+     */
+    public Boolean saveOrUpdateRecord(PacsConfig pacsConfig) {
+        String hospitalId = SysUserUtils.getCurrentHospitalID();
+        String userId = SysUserUtils.getCurrentPrincipleID();
+        Date now = DateUtil.now();
+        pacsConfig.setHospitalId(Long.valueOf(hospitalId));
+        pacsConfig.setModifier(userId);
+        pacsConfig.setGmtModified(now);
+        //新增数据
+        if (pacsConfig.getId() == null) {
+            pacsConfig.setCreator(userId);
+            pacsConfig.setGmtCreate(now);
+        }
+        if (pacsConfig.getIsDeleted() == null) {
+            pacsConfig.setIsDeleted(IsDeleteEnum.N.getKey());
+        }
+        pacsConfigService.saveOrUpdate(pacsConfig);
+        return true;
+    }
+
+    /**
+     * 保存记录-批量
+     *
+     * @param pacsConfigListVO
+     * @return
+     */
+    public Boolean saveOrUpdateRecords(PacsConfigListVO pacsConfigListVO) {
+        String hospitalId = SysUserUtils.getCurrentHospitalID();
+        String userId = SysUserUtils.getCurrentPrincipleID();
+        Date now = DateUtil.now();
+        //id为空且已存在的映射关系先删除
+        List<Long> deleteIds = Lists.newLinkedList();
+        Map<String, Map<String, Long>> configMap
+                = getConfigMap(Long.valueOf(hospitalId), null, null);
+        if (ListUtil.isNotEmpty(pacsConfigListVO.getPacsConfigList())) {
+            pacsConfigListVO.getPacsConfigList().forEach(pacsConfig -> {
+                pacsConfig.setHospitalId(Long.valueOf(hospitalId));
+                pacsConfig.setModifier(userId);
+                pacsConfig.setGmtModified(now);
+                if (pacsConfig.getId() == null) {
+                    if (configMap.get(pacsConfig.getHisName()) != null
+                            && configMap.get(pacsConfig.getHisName()).containsKey(pacsConfig.getUniqueName())) {
+                        deleteIds.add(configMap.get(pacsConfig.getHisName()).get(pacsConfig.getUniqueName()));
+                    }
+                    pacsConfig.setCreator(userId);
+                    pacsConfig.setGmtCreate(now);
+                }
+                if (pacsConfig.getIsDeleted() == null) {
+                    pacsConfig.setIsDeleted(IsDeleteEnum.N.getKey());
+                }
+            });
+            IdListVO idListVO = new IdListVO();
+            idListVO.setIds(deleteIds);
+            deleteRecords(idListVO);
+        }
+        //数据不完整的不保存
+        List<PacsConfig> records = pacsConfigListVO.getPacsConfigList()
+                .stream()
+                .filter(i -> StringUtil.isNotBlank(i.getHisName()))
+                .filter(i -> StringUtil.isNotBlank(i.getUniqueName()))
+                .collect(Collectors.toList());
+        pacsConfigService.saveOrUpdateBatch(records);
+        return true;
+    }
+
+    /**
+     * 删除记录-单条
+     *
+     * @param idVO
+     * @return
+     */
+    public Boolean deleteRecord(IdVO idVO) {
+        UpdateWrapper<PacsConfig> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.eq("id", idVO.getId())
+                .set("is_deleted", IsDeleteEnum.Y.getKey());
+        pacsConfigService.update(updateWrapper);
+        return true;
+    }
+
+    /**
+     * 删除记录-批量
+     *
+     * @param idListVO
+     * @return
+     */
+    public Boolean deleteRecords(IdListVO idListVO) {
+        if (ListUtil.isEmpty(idListVO.getIds())) {
+            return false;
+        }
+        UpdateWrapper<PacsConfig> updateWrapper = new UpdateWrapper<>();
+        updateWrapper.in("id", idListVO.getIds())
+                .set("is_deleted", IsDeleteEnum.Y.getKey());
+        pacsConfigService.update(updateWrapper);
+        return true;
+    }
+
+    /**
+     * 分页查询
+     *
+     * @param pacsConfigPageVO
+     * @return
+     */
+    public IPage<PacsConfig> getPage(PacsConfigPageVO pacsConfigPageVO) {
+        String hospitalId = SysUserUtils.getCurrentHospitalID();
+        pacsConfigPageVO.setHospitalId(Long.valueOf(hospitalId));
+        return pacsConfigService.getPage(pacsConfigPageVO);
+    }
+
+    /**
+     * 化验数据导入
+     *
+     * @param file
+     */
+    public void importExcel(MultipartFile file) {
+        String hospitalId = SysUserUtils.getCurrentHospitalID();
+        String userId = SysUserUtils.getCurrentPrincipleID();
+        Date now = DateUtil.now();
+        List<PacsConfig> pacsConfigList = ExcelUtils.importExcel(file, 0, 1, PacsConfig.class);
+        if (ListUtil.isNotEmpty(pacsConfigList)) {
+            //过滤不完整数据
+            pacsConfigList = pacsConfigList
+                    .stream()
+                    .filter(i -> StringUtil.isNotBlank(i.getHisName()))
+                    .filter(i -> StringUtil.isNotBlank(i.getUniqueName()))
+                    .collect(Collectors.toList());
+            //验证数据是否已存在
+            List<Long> deleteIds = Lists.newArrayList();
+            Map<String, Map<String, Long>> configMap = getConfigMap(Long.valueOf(hospitalId), null, null);
+            pacsConfigList.forEach(pacsConfig -> {
+                if (configMap.get(pacsConfig.getHisName()) != null
+                        && configMap.get(pacsConfig.getHisName()).containsKey(pacsConfig.getUniqueName())) {
+                    deleteIds.add(configMap.get(pacsConfig.getHisName()).get(pacsConfig.getUniqueName()));
+                }
+            });
+            //删除已存在的映射关系
+            if (ListUtil.isNotEmpty(deleteIds)) {
+                IdListVO idListVO = new IdListVO();
+                idListVO.setIds(deleteIds);
+                deleteRecords(idListVO);
+            }
+
+            //保存数据
+            pacsConfigList.forEach(pacsConfig -> {
+                pacsConfig.setIsDeleted(IsDeleteEnum.N.getKey());
+                pacsConfig.setHospitalId(Long.valueOf(hospitalId));
+                if (pacsConfig.getId() == null) {
+                    pacsConfig.setCreator(userId);
+                    pacsConfig.setGmtCreate(now);
+                }
+                pacsConfig.setModifier(userId);
+                pacsConfig.setGmtModified(now);
+            });
+            pacsConfigService.saveOrUpdateBatch(pacsConfigList);
+        }
+    }
+
+    /**
+     * 获取映射关系-公表名
+     *
+     * @param hospitalId
+     * @param hisNames
+     * @param uniqueNames
+     * @return
+     */
+    public Map<String, Map<String,Long>> getConfigMap(Long hospitalId, List<String> hisNames, List<String> uniqueNames) {
+        Map<String, Map<String, Long>> retMap = new HashMap<>();
+        QueryWrapper<PacsConfig> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("hospital_id", hospitalId);
+        if (ListUtil.isNotEmpty(hisNames)) {
+            queryWrapper.in("his_name", hisNames);
+        }
+        if (ListUtil.isNotEmpty(uniqueNames)) {
+            queryWrapper.in("unique_name", uniqueNames);
+        }
+        List<PacsConfig> records = pacsConfigService.list(queryWrapper);
+        if (ListUtil.isEmpty(records)) {
+            return retMap;
+        }
+        Map<String, List<PacsConfig>> configMap = EntityUtil.makeEntityListMap(records, "hisName");
+        for (Map.Entry<String, List<PacsConfig>> entry : configMap.entrySet()) {
+            if (ListUtil.isNotEmpty(entry.getValue())) {
+                retMap.put(entry.getKey(), EntityUtil.makeMapWithKeyValue(entry.getValue(), "uniqueName", "id"));
+            }
+        }
+        return retMap;
+    }
 }

+ 12 - 3
src/main/java/com/diagbot/mapper/PacsConfigMapper.java

@@ -1,7 +1,10 @@
 package com.diagbot.mapper;
 
-import com.diagbot.entity.PacsConfig;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.entity.PacsConfig;
+import com.diagbot.vo.PacsConfigPageVO;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * <p>
@@ -12,5 +15,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @since 2020-07-28
  */
 public interface PacsConfigMapper extends BaseMapper<PacsConfig> {
-
-}
+    /**
+     * 分页查询
+     *
+     * @param pacsConfigPageVO
+     * @return
+     */
+    IPage<PacsConfig> getPage(@Param("pacsConfigPageVO") PacsConfigPageVO pacsConfigPageVO);
+}

+ 10 - 1
src/main/java/com/diagbot/service/PacsConfigService.java

@@ -1,7 +1,10 @@
 package com.diagbot.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.entity.PacsConfig;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.vo.PacsConfigPageVO;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * <p>
@@ -12,5 +15,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
  * @since 2020-07-28
  */
 public interface PacsConfigService extends IService<PacsConfig> {
-
+    /**
+     * 分页查询
+     *
+     * @param pacsConfigPageVO
+     * @return
+     */
+    IPage<PacsConfig> getPage(@Param("pacsConfigPageVO") PacsConfigPageVO pacsConfigPageVO);
 }

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

@@ -1,9 +1,12 @@
 package com.diagbot.service.impl;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.entity.PacsConfig;
 import com.diagbot.mapper.PacsConfigMapper;
 import com.diagbot.service.PacsConfigService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.vo.PacsConfigPageVO;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.stereotype.Service;
 
 /**
@@ -16,5 +19,13 @@ import org.springframework.stereotype.Service;
  */
 @Service
 public class PacsConfigServiceImpl extends ServiceImpl<PacsConfigMapper, PacsConfig> implements PacsConfigService {
-
+    /**
+     * 分页查询
+     *
+     * @param pacsConfigPageVO
+     * @return
+     */
+    public IPage<PacsConfig> getPage(@Param("pacsConfigPageVO") PacsConfigPageVO pacsConfigPageVO) {
+        return baseMapper.getPage(pacsConfigPageVO);
+    }
 }

+ 35 - 0
src/main/java/com/diagbot/vo/DiseaseConfigPageVO.java

@@ -0,0 +1,35 @@
+package com.diagbot.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/7/30 15:54
+ */
+@Getter
+@Setter
+public class DiseaseConfigPageVO {
+    /**
+     * 医院id
+     */
+    @ApiModelProperty(hidden = true)
+    private Long hospitalId;
+
+    /**
+     * his大项名称
+     */
+    private String hisName;
+
+    /**
+     * 标准名
+     */
+    private String uniqueName;
+
+    /**
+     * icd编码
+     */
+    private String icdCode;
+}

+ 35 - 0
src/main/java/com/diagbot/vo/DrugConfigPageVO.java

@@ -0,0 +1,35 @@
+package com.diagbot.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/7/30 15:53
+ */
+@Getter
+@Setter
+public class DrugConfigPageVO {
+    /**
+     * 医院id
+     */
+    @ApiModelProperty(hidden = true)
+    private Long hospitalId;
+
+    /**
+     * his大项名称
+     */
+    private String hisName;
+
+    /**
+     * 标准名
+     */
+    private String uniqueName;
+
+    /**
+     * 标准编码
+     */
+    private String uniqueCode;
+}

+ 36 - 0
src/main/java/com/diagbot/vo/OperationConfigPageVO.java

@@ -0,0 +1,36 @@
+package com.diagbot.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/7/30 15:49
+ */
+@Getter
+@Setter
+public class OperationConfigPageVO extends Page {
+    /**
+     * 医院id
+     */
+    @ApiModelProperty(hidden = true)
+    private Long hospitalId;
+
+    /**
+     * his大项名称
+     */
+    private String hisName;
+
+    /**
+     * 标准名
+     */
+    private String uniqueName;
+
+    /**
+     * 标准编码
+     */
+    private String uniqueCode;
+}

+ 18 - 0
src/main/java/com/diagbot/vo/PacsConfigListVO.java

@@ -0,0 +1,18 @@
+package com.diagbot.vo;
+
+import com.diagbot.entity.PacsConfig;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/7/30 16:20
+ */
+@Getter
+@Setter
+public class PacsConfigListVO {
+    private List<PacsConfig> pacsConfigList;
+}

+ 36 - 0
src/main/java/com/diagbot/vo/PacsConfigPageVO.java

@@ -0,0 +1,36 @@
+package com.diagbot.vo;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @Author:zhaops
+ * @time: 2020/7/30 15:48
+ */
+@Getter
+@Setter
+public class PacsConfigPageVO extends Page {
+    /**
+     * 医院id
+     */
+    @ApiModelProperty(hidden = true)
+    private Long hospitalId;
+
+    /**
+     * his大项名称
+     */
+    private String hisName;
+
+    /**
+     * 标准名
+     */
+    private String uniqueName;
+
+    /**
+     * 标准编码
+     */
+    private String uniqueCode;
+}

+ 1 - 1
src/main/java/com/diagbot/web/LisConfigController.java

@@ -114,7 +114,7 @@ public class LisConfigController {
     @ApiOperation(value = "分页查询[by:zhaops]", notes = "")
     @PostMapping("/getPage")
     @SysLogger("getPage")
-    public RespDTO<Boolean> getPage(@RequestBody @Valid LisConfigPageVO lisConfigPageVO) {
+    public RespDTO<LisConfig> getPage(@RequestBody @Valid LisConfigPageVO lisConfigPageVO) {
         IPage<LisConfig> data = lisConfigFacade.getPage(lisConfigPageVO);
         return RespDTO.onSuc(data);
     }

+ 121 - 3
src/main/java/com/diagbot/web/PacsConfigController.java

@@ -1,9 +1,26 @@
 package com.diagbot.web;
 
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.RespDTO;
+import com.diagbot.entity.PacsConfig;
+import com.diagbot.facade.PacsConfigFacade;
+import com.diagbot.vo.IdListVO;
+import com.diagbot.vo.IdVO;
+import com.diagbot.vo.PacsConfigListVO;
+import com.diagbot.vo.PacsConfigPageVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
 
-import org.springframework.stereotype.Controller;
+import javax.validation.Valid;
 
 /**
  * <p>
@@ -13,8 +30,109 @@ import org.springframework.stereotype.Controller;
  * @author zhaops
  * @since 2020-07-28
  */
-@Controller
-@RequestMapping("/pacsConfig")
+@RestController
+@RequestMapping("/tran/pacsConfig")
+@Api(value = "辅检公表映射API", tags = { "辅检公表映射API" })
 public class PacsConfigController {
 
+    @Autowired
+    private PacsConfigFacade pacsConfigFacade;
+
+    /**
+     * 映射关系是否已存在
+     *
+     * @param pacsConfig
+     * @return
+     */
+    @ApiOperation(value = "映射关系是否已存在[by:zhaops]", notes = "")
+    @PostMapping("/isExistRecord")
+    @SysLogger("isExistRecord")
+    public RespDTO<Boolean> isExistRecord(@RequestBody @Valid PacsConfig pacsConfig) {
+        Boolean data = pacsConfigFacade.isExistRecord(pacsConfig);
+        return RespDTO.onSuc(data);
+    }
+
+    /**
+     * 保存或修改映射关系
+     *
+     * @param pacsConfig
+     * @return
+     */
+    @ApiOperation(value = "保存或修改映射关系[by:zhaops]", notes = "")
+    @PostMapping("/saveOrUpdateRecord")
+    @SysLogger("saveOrUpdateRecord")
+    public RespDTO<Boolean> saveOrUpdateRecord(@RequestBody @Valid PacsConfig pacsConfig) {
+        Boolean data = pacsConfigFacade.saveOrUpdateRecord(pacsConfig);
+        return RespDTO.onSuc(data);
+    }
+
+    /**
+     * 批量保存或修改映射关系
+     *
+     * @param pacsConfigListVO
+     * @return
+     */
+    @ApiOperation(value = "批量保存或修改映射关系[by:zhaops]", notes = "")
+    @PostMapping("/saveOrUpdateRecords")
+    @SysLogger("saveOrUpdateRecords")
+    public RespDTO<Boolean> saveOrUpdateRecords(@RequestBody @Valid PacsConfigListVO pacsConfigListVO) {
+        Boolean data = pacsConfigFacade.saveOrUpdateRecords(pacsConfigListVO);
+        return RespDTO.onSuc(data);
+    }
+
+    /**
+     * 删除映射关系
+     *
+     * @param idVO
+     * @return
+     */
+    @ApiOperation(value = "删除映射关系[by:zhaops]", notes = "")
+    @PostMapping("/deleteRecord")
+    @SysLogger("deleteRecord")
+    public RespDTO<Boolean> deleteRecord(@RequestBody @Valid IdVO idVO) {
+        Boolean data = pacsConfigFacade.deleteRecord(idVO);
+        return RespDTO.onSuc(data);
+    }
+
+    /**
+     * 批量删除映射关系
+     *
+     * @param idListVO
+     * @return
+     */
+    @ApiOperation(value = "批量删除映射关系[by:zhaops]", notes = "")
+    @PostMapping("/deleteRecords")
+    @SysLogger("deleteRecords")
+    public RespDTO<Boolean> deleteRecords(@RequestBody @Valid IdListVO idListVO) {
+        Boolean data = pacsConfigFacade.deleteRecords(idListVO);
+        return RespDTO.onSuc(data);
+    }
+
+    /**
+     * 分页查询
+     *
+     * @param pacsConfigPageVO
+     * @return
+     */
+    @ApiOperation(value = "分页查询[by:zhaops]", notes = "")
+    @PostMapping("/getPage")
+    @SysLogger("getPage")
+    public RespDTO<PacsConfig> getPage(@RequestBody @Valid PacsConfigPageVO pacsConfigPageVO) {
+        IPage<PacsConfig> data = pacsConfigFacade.getPage(pacsConfigPageVO);
+        return RespDTO.onSuc(data);
+    }
+
+    /**
+     * 辅检公表数据导入
+     *
+     * @param file
+     * @return
+     */
+    @ApiOperation(value = "辅检公表数据导入[by:zhaops]",
+            notes = "")
+    @PostMapping("/importExcel")
+    @SysLogger("importExcel")
+    public void importExcel(@RequestParam("file") MultipartFile file) {
+        pacsConfigFacade.importExcel(file);
+    }
 }

+ 18 - 0
src/main/resources/mapper/PacsConfigMapper.xml

@@ -16,4 +16,22 @@
         <result column="unique_code" property="uniqueCode" />
     </resultMap>
 
+    <!-- 分页查询 -->
+    <select id="getPage" resultType="com.diagbot.entity.PacsConfig">
+        select a.*
+        from tran_pacs_config a
+        where a.is_deleted='N'
+        <if test="pacsConfigPageVO.hospitalId!=null">
+            and a.hospital_id=#{pacsConfigPageVO.hospitalId}
+        </if>
+        <if test="pacsConfigPageVO.hisName!=null and pacsConfigPageVO.hisName!=''">
+            and a.his_name like concat("%",#{pacsConfigPageVO.hisName},"%")
+        </if>
+        <if test="pacsConfigPageVO.uniqueName!=null and pacsConfigPageVO.uniqueName!=''">
+            and a.unique_name like concat("%",#{pacsConfigPageVO.uniqueName},"%")
+        </if>
+        <if test="pacsConfigPageVO.uniqueCode!=null and pacsConfigPageVO.uniqueCode!=''">
+            and a.unique_code like concat("%",#{pacsConfigPageVO.uniqueCode},"%")
+        </if>
+    </select>
 </mapper>