فهرست منبع

Merge branch 'master' of huangrui/CostAccount into dev

lijiaxi 4 سال پیش
والد
کامیت
99a84361d0

+ 16 - 0
src/main/java/com/imed/costaccount/mapper/CostShareParamMapper.java

@@ -0,0 +1,16 @@
+package com.imed.costaccount.mapper;
+
+import com.imed.costaccount.model.CostShareParam;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 分摊参数对照表
+ * 
+ * @author KCYG
+ * @date 2021-07-28 09:23:28
+ */
+@Mapper
+public interface CostShareParamMapper extends BaseMapper<CostShareParam> {
+	
+}

+ 59 - 0
src/main/java/com/imed/costaccount/model/CostShareParam.java

@@ -0,0 +1,59 @@
+package com.imed.costaccount.model;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * 分摊参数对照表
+ * 
+ * @author KCYG
+ * @email KCYG@xinxicom
+ * @date 2021-07-28 09:23:28
+ */
+@Data
+@Accessors(chain = true)
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName("cost_share_param")
+public class CostShareParam implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 主键
+	 */
+	@TableId
+	private Integer id;
+	/**
+	 * 分摊参数名称
+	 */
+	private String shareParamName;
+	/**
+	 * 分摊代码
+	 */
+	private String shareParamCode;
+	/**
+	 * 医院Id
+	 */
+	private Integer hospId;
+	/**
+	 * 计算方式
+	 */
+	private Integer calcType;
+	/**
+	 * 创建时间13位时间戳
+	 */
+	private Long createTime;
+	/**
+	 * 删除时间,如果存在表示已删除13位时间戳
+	 */
+	@TableLogic(value = "0",delval = "UNIX_TIMESTAMP(NOW()) * 1000")
+	private Long deleteTime;
+
+}

+ 27 - 0
src/main/java/com/imed/costaccount/model/vo/CostShareParamVO.java

@@ -0,0 +1,27 @@
+package com.imed.costaccount.model.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author 李加喜
+ * @Package com.imed.costaccount.model.vo
+ * @date 2021-07-28 9:42
+ */
+@Data
+@ApiModel("分摊参数返回对象")
+public class CostShareParamVO {
+
+    @ApiModelProperty(name = "id",value = "分摊参数的Id")
+    private Integer id;
+
+    @ApiModelProperty(name = "shareParamName",value = "分摊层级的名称")
+    private String shareParamName;
+
+    @ApiModelProperty(name = "shareParamCode",value = "分摊层级的代码")
+    private String shareParamCode;
+
+    @ApiModelProperty(name = "calcType",value = "分摊参数的计算方式")
+    private Integer calcType;
+}

+ 7 - 23
src/main/java/com/imed/costaccount/model/vo/HosptailVO.java

@@ -1,7 +1,5 @@
 package com.imed.costaccount.model.vo;
 
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableLogic;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.*;
@@ -18,39 +16,25 @@ import lombok.*;
 @Builder
 @ApiModel
 public class HosptailVO {
-    /**
-     * 医院或者病区Id
-     */
+
     @ApiModelProperty(name = "id",value = "医院或者病区Id")
     private Integer id;
-    /**
-     * 是否是院区(0不是 1是)
-     */
+
     @ApiModelProperty(name = "name",value = "医院或院区名称")
     private String name;
-    /**
-     * 账号
-     */
+
     @ApiModelProperty(name = "is_hosptail",value = "是否为院区(0.不是,1.是)默认为0")
     private Integer isHosptail;
-    /**
-     * 医院唯一标识
-     */
+
     @ApiModelProperty(name = "sign",value = "如果是院区医院的id,默认为0")
     private String sign;
-    /**
-     * 如果是院区医院的id,默认为0
-     */
+
     @ApiModelProperty(name = "parentId",value = "如果是院区医院的名称,默认为")
     private Integer parentId;
-    /**
-     * 如果是院区医院的名称,默认为'
-     */
+
     @ApiModelProperty(name = "parentName",value = "医院唯一标识,院区不存在次内容")
     private String parentName;
-    /**
-     * 创建时间13位时间戳
-     */
+
     @ApiModelProperty(name = "createTime",value = "创建时间13位时间戳")
     private Long createTime;
 }

+ 24 - 0
src/main/java/com/imed/costaccount/service/CostShareParamService.java

@@ -0,0 +1,24 @@
+package com.imed.costaccount.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.model.CostShareParam;
+
+/**
+ * 分摊参数对照表
+ *
+ * @author KCYG
+ * @email KCYG@xinxicom
+ * @date 2021-07-28 09:23:28
+ */
+public interface CostShareParamService extends IService<CostShareParam> {
+    /**
+     * 分页查询相关的分摊参数数据
+     * @param page
+     * @param pageSize
+     * @param name
+     * @return
+     */
+    PageUtils queryList(Integer page, Integer pageSize, String name,Integer hospId);
+}
+

+ 42 - 0
src/main/java/com/imed/costaccount/service/impl/CostShareParamServiceImpl.java

@@ -0,0 +1,42 @@
+package com.imed.costaccount.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.imed.costaccount.common.util.BeanUtil;
+import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.mapper.CostShareParamMapper;
+import com.imed.costaccount.model.CostShareParam;
+import com.imed.costaccount.model.vo.CostShareParamVO;
+import com.imed.costaccount.service.CostShareParamService;
+import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import java.util.List;
+
+
+@Service("costShareParamService")
+public class CostShareParamServiceImpl extends ServiceImpl<CostShareParamMapper, CostShareParam> implements CostShareParamService {
+
+
+    /**
+     * 分页查询相关的分摊参数数据
+     *
+     * @param page
+     * @param pageSize
+     * @param name
+     * @return
+     */
+    @Override
+    public PageUtils queryList(Integer page, Integer pageSize, String name,Integer hospId) {
+        Page<CostShareParam> costShareParamPage = new Page<>(page, pageSize);
+        Page<CostShareParam> pages = this.page(costShareParamPage, new QueryWrapper<CostShareParam>().lambda()
+                .eq(!StringUtils.isEmpty(hospId), CostShareParam::getHospId, hospId)
+                .like(!StringUtils.isEmpty(name), CostShareParam::getShareParamName, name));
+        List<CostShareParam> records = pages.getRecords();
+        List<CostShareParamVO> costShareParamVOList = BeanUtil.convertList(records, CostShareParamVO.class);
+        PageUtils pageUtils = new PageUtils(pages);
+        pageUtils.setList(costShareParamVOList);
+        return pageUtils;
+    }
+}

+ 1 - 1
src/main/java/com/imed/costaccount/service/impl/ResponsibilityDepartmentServiceImpl.java

@@ -68,7 +68,7 @@ public class ResponsibilityDepartmentServiceImpl
                         .eq(ResponsibilityDepartment::getHospId, hospId)
         );
         if (CollUtil.isNotEmpty(list)) {
-            this.removeByIds(list);
+            this.removeByIds(list.stream().map(ResponsibilityDepartment::getId).collect(Collectors.toList()));
         }
         List<Integer> departmentIds = departDTO.getDepartmentIds();
         if (CollUtil.isEmpty(departmentIds)) {

+ 16 - 5
src/main/java/com/imed/costaccount/service/impl/ResponsibilityServiceImpl.java

@@ -54,7 +54,12 @@ public class ResponsibilityServiceImpl extends ServiceImpl<ResponsibilityMapper,
 
         parentCostResponsibility.forEach(i -> costResponsibilityVOS.forEach(j -> {
             if (j.getParentId().equals(i.getId())) {
-                i.getChild().add(j);
+                List<CostResponsibilityVO> child = i.getChild();
+                if (CollUtil.isEmpty(child)) {
+                    child = new ArrayList<>();
+                }
+                child.add(j);
+                i.setChild(child);
             }
         }));
 
@@ -87,7 +92,7 @@ public class ResponsibilityServiceImpl extends ServiceImpl<ResponsibilityMapper,
         }
 
         Responsibility center = BeanUtil.convertObj(responsibilitySaveDTO, Responsibility.class);
-        center.setCreateTime(new Date().getTime()).setId(null).setParentId(id).setHospId(user.getHospId());
+        center.setCreateTime(new Date().getTime()).setId(null).setParentId(id).setHospId(user.getHospId()).setResponsibilityLevel(2);
         if (id == 0) {
             center.setResponsibilityLevel(1);
             center.setShareLevel(0);
@@ -133,7 +138,7 @@ public class ResponsibilityServiceImpl extends ServiceImpl<ResponsibilityMapper,
         this.removeById(id);
         // 新增父节点数据
         Responsibility newResponsibility = BeanUtil.convertObj(dto, Responsibility.class);
-        newResponsibility.setId(null).setHospId(responsibility.getHospId()).setCreateTime(new Date().getTime());
+        newResponsibility.setId(null).setHospId(responsibility.getHospId()).setCreateTime(new Date().getTime()).setResponsibilityLevel(1);
         this.save(newResponsibility);
         // 将原来所有父节点下数据关联到新的父节点下
         List<Responsibility> list = this.list(new QueryWrapper<Responsibility>().lambda().eq(Responsibility::getParentId, id));
@@ -155,7 +160,7 @@ public class ResponsibilityServiceImpl extends ServiceImpl<ResponsibilityMapper,
         this.removeById(id);
         // 新增父节点数据
         Responsibility newResponsibility = BeanUtil.convertObj(dto, Responsibility.class);
-        newResponsibility.setId(null).setHospId(responsibility.getHospId()).setCreateTime(new Date().getTime());
+        newResponsibility.setId(null).setHospId(responsibility.getHospId()).setCreateTime(new Date().getTime()).setResponsibilityLevel(1);
         this.save(newResponsibility);
     }
 
@@ -224,7 +229,12 @@ public class ResponsibilityServiceImpl extends ServiceImpl<ResponsibilityMapper,
                 if (parent.getId().equals(son.getParentId())) {
                     sonVO.setResponsibilityId(son.getId());
                     sonVO.setResponsibilityName(son.getResponsibilityName());
-                    centerDepartmentVO.getChild().add(sonVO);
+                    List<CenterDepartmentVO> child = centerDepartmentVO.getChild();
+                    if (CollUtil.isEmpty(child)) {
+                        child = new ArrayList<>();
+                    }
+                    child.add(sonVO);
+                    centerDepartmentVO.setChild(child);
                 }
             }
             list.add(centerDepartmentVO);
@@ -237,6 +247,7 @@ public class ResponsibilityServiceImpl extends ServiceImpl<ResponsibilityMapper,
     public List<CommonVO> getParentList(User user) {
         List<Responsibility> list = this.list(
                 new LambdaQueryWrapper<Responsibility>().select(Responsibility::getId, Responsibility::getResponsibilityName)
+                        .eq(Responsibility::getResponsibilityLevel,1)
                         .eq(Responsibility::getHospId, user.getHospId())
         );
         return list.stream().map(i -> {

+ 81 - 0
src/main/java/com/imed/costaccount/web/CostShareParamController.java

@@ -0,0 +1,81 @@
+package com.imed.costaccount.web;
+
+import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.common.util.Result;
+import com.imed.costaccount.model.CostShareParam;
+import com.imed.costaccount.model.User;
+import com.imed.costaccount.service.CostShareParamService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.shiro.SecurityUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Arrays;
+
+
+/**
+ * 分摊参数对照表
+ *
+ * @author KCYG
+ * @date 2021-07-28 09:23:28
+ */
+@RestController
+@RequestMapping("/costshareparam")
+@Api(tags = "成本参数操作")
+public class CostShareParamController {
+    @Autowired
+    private CostShareParamService costShareParamService;
+
+    /**
+     * 分页查询列表
+     */
+    @GetMapping("/list")
+    @ApiOperation("分页查询成本相关参数")
+    public Result list(@RequestParam(defaultValue = "1", value = "page") Integer page,
+                       @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
+                        @RequestParam(value = "name",required = false) String name){
+        User user = (User) SecurityUtils.getSubject().getPrincipal();
+        Integer hospId = user.getHospId();
+        PageUtils pageUtils= costShareParamService.queryList(page,pageSize,name,hospId);
+        return Result.ok(pageUtils);
+    }
+
+
+    /**
+     * 信息
+     */
+    @GetMapping("/info/{id}")
+    public Result info(@PathVariable("id") Integer id){
+		CostShareParam costShareParam = costShareParamService.getById(id);
+        return Result.ok(costShareParam);
+    }
+
+    /**
+     * 保存
+     */
+    @PostMapping("/save")
+    public Result save(@RequestBody CostShareParam costShareParam){
+		costShareParamService.save(costShareParam);
+        return Result.ok();
+    }
+
+    /**
+     * 修改
+     */
+    @PutMapping("/update")
+    public Result update(@RequestBody CostShareParam costShareParam){
+		costShareParamService.updateById(costShareParam);
+        return Result.ok();
+    }
+
+    /**
+     * 删除
+     */
+    @DeleteMapping("/delete")
+    public Result delete(@RequestBody Integer[] ids){
+		costShareParamService.removeByIds(Arrays.asList(ids));
+        return Result.ok();
+    }
+
+}

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

@@ -0,0 +1,18 @@
+<?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.imed.costaccount.mapper.CostShareParamMapper">
+
+	<!-- 可根据自己的需求,是否要使用 -->
+    <resultMap type="com.imed.costaccount.model.CostShareParam" id="costShareParamMap">
+        <result property="id" column="id"/>
+        <result property="shareParamName" column="share_param_name"/>
+        <result property="shareParamCode" column="share_param_code"/>
+        <result property="hospId" column="hosp_id"/>
+        <result property="calcType" column="calc_type"/>
+        <result property="createTime" column="create_time"/>
+        <result property="deleteTime" column="delete_time"/>
+    </resultMap>
+
+
+</mapper>

+ 6 - 6
src/main/resources/mapper/ResponsibilityDepartmentMapper.xml

@@ -5,12 +5,12 @@
 
 	<!-- 可根据自己的需求,是否要使用 -->
     <resultMap type="com.imed.costaccount.model.ResponsibilityDepartment" id="responsibilityDepartmentMap">
-        <result property="id" column="id"/>
-        <result property="responsibilityId" column="responsibility_id"/>
-        <result property="departmentId" column="department_id"/>
-        <result property="hospId" column="hosp_id"/>
-        <result property="createTime" column="create_time"/>
-        <result property="deleteTime" column="delete_time"/>
+        <result property="id" column="id" jdbcType="INTEGER"/>
+        <result property="responsibilityId" column="responsibility_id" jdbcType="INTEGER"/>
+        <result property="departmentId" column="department_id" jdbcType="INTEGER"/>
+        <result property="hospId" column="hosp_id" jdbcType="INTEGER"/>
+        <result property="createTime" column="create_time" jdbcType="BIGINT"/>
+        <result property="deleteTime" column="delete_time" jdbcType="BIGINT"/>
     </resultMap>