chengyao 3 年 前
コミット
6608b8d258

+ 41 - 0
common/src/main/java/com/lantone/common/vo/SaveDictionaryVO.java

@@ -0,0 +1,41 @@
+package com.lantone.common.vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+
+/**
+ * <p>
+ * 系统字典表
+ * </p>
+ */
+@Data
+public class SaveDictionaryVO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "主键")
+    private Long id;
+
+    @ApiModelProperty(value = "分组(值自定义)")
+    private Long groupType;
+
+    @ApiModelProperty(value = "内容")
+    @NotBlank
+    private String name;
+
+    @ApiModelProperty(value = "值")
+    @NotBlank
+    private String val;
+
+    @ApiModelProperty(value = "是否启用(0-否 1-是)")
+    @NotBlank
+    private Long status;
+
+    @ApiModelProperty(value = "备注")
+    @NotBlank
+    private String remark;
+
+
+}

+ 25 - 0
common/src/main/java/com/lantone/common/vo/ViewDictionaryInfoVO.java

@@ -0,0 +1,25 @@
+package com.lantone.common.vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+
+@Data
+public class ViewDictionaryInfoVO implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "id")
+    private Long id;
+
+    @ApiModelProperty(value = "分组(值自定义)")
+    private Long groupType;
+
+    @ApiModelProperty(value = "代码名称")
+    private String name;
+
+    @ApiModelProperty(value = "医院ID")
+    private Long hospitalId;
+
+}

+ 87 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/entity/SysDictionaryInfo.java

@@ -0,0 +1,87 @@
+package com.lantone.dblayermbg.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * <p>
+ * 系统字典表
+ * </p>
+ */
+@Data
+@TableName("sys_dictionary_info")
+@ApiModel(value="SysDictionaryInfo对象", description="系统字典表")
+public class SysDictionaryInfo implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "主键")
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    @ApiModelProperty(value = "分组(值自定义)")
+    @TableField("group_type")
+    private Long groupType;
+
+    @ApiModelProperty(value = "内容")
+    @TableField("name")
+    private String name;
+
+    @ApiModelProperty(value = "值")
+    @TableField("val")
+    private String val;
+
+    @ApiModelProperty(value = "是否启用(0-否 1-是)")
+    @TableField("status")
+    private Long status;
+
+    @ApiModelProperty(value = "返回类型(0: 都返回,1:后台维护返回 2:界面返回)")
+    @TableField("return_type")
+    @JsonIgnore
+    private Integer returnType;
+
+    @ApiModelProperty(value = "排序号")
+    @TableField("order_no")
+    @JsonIgnore
+    private Integer orderNo;
+
+    @ApiModelProperty(value = "是否删除,N:未删除,Y:删除")
+    @TableField("is_deleted")
+    @JsonIgnore
+    private String isDeleted;
+
+    @ApiModelProperty(value = "记录创建时间")
+    @TableField("gmt_create")
+    @JsonIgnore
+    private Date gmtCreate;
+
+    @ApiModelProperty(value = "记录修改时间,如果时间是1970年则表示纪录未修改")
+    @TableField("gmt_modified")
+    @JsonIgnore
+    private Date gmtModified;
+
+    @ApiModelProperty(value = "创建人,0表示无创建人值")
+    @TableField("creator")
+    @JsonIgnore
+    private String creator;
+
+    @ApiModelProperty(value = "修改人,如果为0则表示纪录未修改")
+    @TableField("modifier")
+    @JsonIgnore
+    private String modifier;
+
+    @ApiModelProperty(value = "备注")
+    @TableField("remark")
+    private String remark;
+
+
+}

+ 14 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/facade/SysDictionaryInfoFacade.java

@@ -0,0 +1,14 @@
+package com.lantone.dblayermbg.facade;
+
+import com.lantone.dblayermbg.service.impl.SysDictionaryInfoServiceImpl;
+import org.springframework.stereotype.Component;
+
+/**
+ * <p>
+ * 系统字典表 服务实现类Facade
+ * </p>
+ */
+@Component
+public class SysDictionaryInfoFacade extends SysDictionaryInfoServiceImpl {
+
+}

+ 14 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/mapper/SysDictionaryInfoMapper.java

@@ -0,0 +1,14 @@
+package com.lantone.dblayermbg.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.lantone.dblayermbg.entity.SysDictionaryInfo;
+
+/**
+ * <p>
+ * 系统字典表 Mapper 接口
+ * </p>
+ */
+public interface SysDictionaryInfoMapper extends BaseMapper<SysDictionaryInfo> {
+
+}
+

+ 13 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/SysDictionaryInfoService.java

@@ -0,0 +1,13 @@
+package com.lantone.dblayermbg.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.lantone.dblayermbg.entity.SysDictionaryInfo;
+
+/**
+ * <p>
+ * 系统字典表 服务类
+ * </p>
+ */
+public interface SysDictionaryInfoService extends IService<SysDictionaryInfo> {
+
+}

+ 17 - 0
dblayer-mbg/src/main/java/com/lantone/dblayermbg/service/impl/SysDictionaryInfoServiceImpl.java

@@ -0,0 +1,17 @@
+package com.lantone.dblayermbg.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.lantone.dblayermbg.entity.SysDictionaryInfo;
+import com.lantone.dblayermbg.mapper.SysDictionaryInfoMapper;
+import com.lantone.dblayermbg.service.SysDictionaryInfoService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 系统字典表 服务实现类
+ * </p>
+ */
+@Service
+public class SysDictionaryInfoServiceImpl extends ServiceImpl<SysDictionaryInfoMapper, SysDictionaryInfo> implements SysDictionaryInfoService {
+
+}

+ 5 - 0
dblayer-mbg/src/main/resources/mapper/SysDictionaryInfoMapper.xml

@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.lantone.dblayermbg.mapper.SysDictionaryInfoMapper">
+
+</mapper>

+ 22 - 0
dblayer-mbg/src/main/resources/mapper/base/BaseSysDictionaryInfoMapper.xml

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.lantone.dblayermbg.mapper.SysDictionaryInfoMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.lantone.dblayermbg.entity.SysDictionaryInfo">
+        <id column="id" property="id"/>
+        <result column="group_type" property="groupType"/>
+        <result column="name" property="name"/>
+        <result column="val" property="val"/>
+        <result column="status" property="status"/>
+        <result column="return_type" property="returnType"/>
+        <result column="order_no" property="orderNo"/>
+        <result column="is_deleted" property="isDeleted"/>
+        <result column="gmt_create" property="gmtCreate"/>
+        <result column="gmt_modified" property="gmtModified"/>
+        <result column="creator" property="creator"/>
+        <result column="modifier" property="modifier"/>
+        <result column="remark" property="remark"/>
+    </resultMap>
+
+</mapper>

+ 20 - 0
dblayer-mbg/src/main/resources/mapper/base/BaseSysRegionDeptMapper.xml

@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.lantone.dblayermbg.mapper.SysRegionDeptMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.lantone.dblayermbg.entity.SysRegionDept">
+        <id column="id" property="id"/>
+        <result column="hospital_id" property="hospitalId"/>
+        <result column="region_id" property="regionId"/>
+        <result column="dept_id" property="deptId"/>
+        <result column="order_no" property="orderNo"/>
+        <result column="is_deleted" property="isDeleted"/>
+        <result column="gmt_create" property="gmtCreate"/>
+        <result column="gmt_modified" property="gmtModified"/>
+        <result column="creator" property="creator"/>
+        <result column="modifier" property="modifier"/>
+        <result column="remark" property="remark"/>
+    </resultMap>
+
+</mapper>

+ 22 - 0
dblayer-mbg/src/main/resources/mapper/base/BaseSysRegionMapper.xml

@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.lantone.dblayermbg.mapper.SysRegionMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.lantone.dblayermbg.entity.SysRegion">
+        <id column="id" property="id"/>
+        <result column="hospital_id" property="hospitalId"/>
+        <result column="code" property="code"/>
+        <result column="name" property="name"/>
+        <result column="spell" property="spell"/>
+        <result column="station" property="station"/>
+        <result column="order_no" property="orderNo"/>
+        <result column="is_deleted" property="isDeleted"/>
+        <result column="gmt_create" property="gmtCreate"/>
+        <result column="gmt_modified" property="gmtModified"/>
+        <result column="creator" property="creator"/>
+        <result column="modifier" property="modifier"/>
+        <result column="remark" property="remark"/>
+    </resultMap>
+
+</mapper>

+ 86 - 0
security-center/src/main/java/com/lantone/security/facade/DictionaryInfoFacade.java

@@ -0,0 +1,86 @@
+package com.lantone.security.facade;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.additional.query.impl.LambdaQueryChainWrapper;
+import com.lantone.common.exception.ApiException;
+import com.lantone.common.util.StringUtil;
+import com.lantone.common.vo.SaveDictionaryVO;
+import com.lantone.common.vo.ViewDictionaryInfoVO;
+import com.lantone.dblayermbg.entity.SysDictionaryInfo;
+import com.lantone.dblayermbg.service.impl.SysDictionaryInfoServiceImpl;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+
+
+/**
+ * <p>
+ * 系统字典表 服务实现类Facade
+ * </p>
+ */
+@Component
+public class DictionaryInfoFacade extends SysDictionaryInfoServiceImpl {
+
+    public Object saveDictionary(SaveDictionaryVO saveDictionaryVO) {
+        Boolean flag = false;
+        //新增-校验重复数据
+        checkDictionary(saveDictionaryVO);
+        SysDictionaryInfo sysDictionaryInfo = new SysDictionaryInfo();
+        BeanUtils.copyProperties(saveDictionaryVO, sysDictionaryInfo);
+        if (null == saveDictionaryVO.getId()) {
+            flag = addDictionary(sysDictionaryInfo);
+        } else if (null != saveDictionaryVO.getId()) {
+            flag = updateDictionary(sysDictionaryInfo);
+        }
+        return flag;
+    }
+
+    ;
+
+
+    public IPage<SysDictionaryInfo> getDictionary(ViewDictionaryInfoVO viewDictionaryInfoVO) {
+        IPage<SysDictionaryInfo> pageInfo = new Page();
+        LambdaQueryChainWrapper<SysDictionaryInfo> sysDictionaryInfoLambdaQuery = this.lambdaQuery();
+        if (StringUtil.isNotEmpty(viewDictionaryInfoVO.getName())) {
+            sysDictionaryInfoLambdaQuery.like(SysDictionaryInfo::getName, viewDictionaryInfoVO.getName());
+        }
+        if (null != viewDictionaryInfoVO.getGroupType()) {
+            sysDictionaryInfoLambdaQuery.like(SysDictionaryInfo::getGroupType, viewDictionaryInfoVO.getGroupType());
+        }
+        IPage<SysDictionaryInfo> page = sysDictionaryInfoLambdaQuery.page(pageInfo);
+        return page;
+    }
+
+    public Boolean deletDictionary(ViewDictionaryInfoVO deleteDictionaryInfoVO) {
+        return this.lambdaUpdate().eq(SysDictionaryInfo::getId, deleteDictionaryInfoVO.getId()).remove();
+    }
+
+    public void checkDictionary(SaveDictionaryVO saveDictionaryVO) {
+        if (null == saveDictionaryVO.getId()) {
+            Integer count = this.lambdaQuery()
+                    .eq(SysDictionaryInfo::getName, saveDictionaryVO.getName())
+                    .eq(SysDictionaryInfo::getVal, saveDictionaryVO.getVal())
+                    .count();
+            if (count > 0) {
+                throw new ApiException("当前字典添加重复");
+            }
+
+        }
+    }
+
+    public Boolean addDictionary(SysDictionaryInfo sysDictionaryInfo) {
+        sysDictionaryInfo.setGmtCreate(new Date());
+        sysDictionaryInfo.setCreator("程瑶-后期改");
+        return this.save(sysDictionaryInfo);
+    }
+
+    public Boolean updateDictionary(SysDictionaryInfo sysDictionaryInfo) {
+        sysDictionaryInfo.setGmtModified(new Date());
+        sysDictionaryInfo.setModifier("程瑶改");
+        return this.updateById(sysDictionaryInfo);
+    }
+
+}
+

+ 64 - 0
security-center/src/main/java/com/lantone/security/web/DictionaryManagementController.java

@@ -0,0 +1,64 @@
+package com.lantone.security.web;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.lantone.common.api.CommonResult;
+import com.lantone.common.vo.SaveDictionaryVO;
+import com.lantone.common.vo.ViewDictionaryInfoVO;
+import com.lantone.dblayermbg.entity.SysDictionaryInfo;
+import com.lantone.security.facade.DictionaryInfoFacade;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+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.RestController;
+import springfox.documentation.annotations.ApiIgnore;
+
+/**
+ * @ClassName: DictionaryManagementController
+ * @Description: 字典管理
+ * @Author cy
+ * @Date 2021/7/29
+ * @Version 1.0
+ */
+@RestController
+@Api(value = "字典管理API", tags = { "字典管理API" })
+@RequestMapping("/dictionary/management")
+public class DictionaryManagementController {
+    @Autowired
+    private DictionaryInfoFacade dictionaryInfoFacade;
+
+    @ApiOperation(value = "新增/修改字典[by:cy]",
+            notes = "id:新增操作为null<br>" +
+                    "groupType:代码类别,必填<br>" +
+                    "val:字典编码,必填<br>" +
+                    "name:代码名称,必填<br>" +
+                    "remark:字典说明,必填<br>" +
+                    "status:是否启用,必填<br>")
+    @PostMapping("/saveDictionary")
+    @ApiIgnore
+    @Transactional
+    public CommonResult<Object> saveDictionary(@RequestBody SaveDictionaryVO saveDictionaryVO) {
+        return CommonResult.success(dictionaryInfoFacade.saveDictionary(saveDictionaryVO));
+    }
+
+    @ApiOperation(value = "查看字典管理[by:cy]",
+            notes = "name:代码名称,<br>" +
+                    "groupType:代码类别,<br>")
+    @PostMapping("/getDictionary")
+    @ApiIgnore
+    public CommonResult<IPage<SysDictionaryInfo>> getDictionary(@RequestBody ViewDictionaryInfoVO viewDictionaryInfoVO) {
+        return CommonResult.success(dictionaryInfoFacade.getDictionary(viewDictionaryInfoVO));
+    }
+
+    @ApiOperation(value = "删除字典管理[by:cy]",
+            notes = "id:<br>")
+    @PostMapping("/deletDictionary")
+    @ApiIgnore
+    @Transactional
+    public CommonResult<Boolean> deletDictionary(@RequestBody ViewDictionaryInfoVO deletDictionaryInfoVO) {
+        return CommonResult.success(dictionaryInfoFacade.deletDictionary(deletDictionaryInfoVO));
+    }
+}

+ 3 - 2
security-center/src/main/java/com/lantone/security/web/RegionManagementController.java

@@ -18,7 +18,7 @@ import org.springframework.web.bind.annotation.RestController;
 import springfox.documentation.annotations.ApiIgnore;
 
 /**
- * @ClassName: DataWardController
+ * @ClassName: RegionManagementController
  * @Description: 病区管理
  * @Author cy
  * @Date 2021/7/27
@@ -32,7 +32,8 @@ public class RegionManagementController {
     private RegionManagementFacade sysRegionFacade;
 
     @ApiOperation(value = "新增/修改病区[by:cy]",
-            notes = "organizationName:上级组织名称,必填<br>" +
+            notes = "hospitalName:上级组织名称,必填<br>" +
+                    "id:新增操作为null <br>" +
                     "name:病区名称,必填<br>" +
                     "code:病区编码,<br>" +
                     "deptIds:关联科室,<br>" +