Browse Source

诊次/床日设置 全院其他收支设置

ljx 4 years ago
parent
commit
5464382c87
28 changed files with 1187 additions and 18 deletions
  1. 16 0
      src/main/java/com/imed/costaccount/mapper/CostNumberBedSetMapper.java
  2. 16 0
      src/main/java/com/imed/costaccount/mapper/CostOtherPaymentsMapper.java
  3. 75 0
      src/main/java/com/imed/costaccount/model/CostNumberBedSet.java
  4. 53 0
      src/main/java/com/imed/costaccount/model/CostOtherPayments.java
  5. 18 0
      src/main/java/com/imed/costaccount/model/dto/CheckShareParamStatusDto.java
  6. 20 0
      src/main/java/com/imed/costaccount/model/dto/CostNumberBedSetEditDto.java
  7. 50 0
      src/main/java/com/imed/costaccount/model/dto/CostNumberBedSetSaveDto.java
  8. 21 0
      src/main/java/com/imed/costaccount/model/dto/CostOtherPaymentsEditDto.java
  9. 19 0
      src/main/java/com/imed/costaccount/model/vo/CheckShareParamStatusVO.java
  10. 42 0
      src/main/java/com/imed/costaccount/model/vo/CostNumberBedSetVO.java
  11. 27 0
      src/main/java/com/imed/costaccount/model/vo/CostOtherPaymentsSaveDto.java
  12. 30 0
      src/main/java/com/imed/costaccount/model/vo/CostOtherPaymentsVO.java
  13. 0 16
      src/main/java/com/imed/costaccount/model/vo/CostResponsibilityTreeVO.java
  14. 19 0
      src/main/java/com/imed/costaccount/model/vo/ReportFormCheckStatusVO.java
  15. 5 0
      src/main/java/com/imed/costaccount/model/vo/ReportFormVO.java
  16. 70 0
      src/main/java/com/imed/costaccount/service/CostNumberBedSetService.java
  17. 47 0
      src/main/java/com/imed/costaccount/service/CostOtherPaymentsService.java
  18. 1 0
      src/main/java/com/imed/costaccount/service/CostShareParamService.java
  19. 1 1
      src/main/java/com/imed/costaccount/service/impl/AccountingServiceImpl.java
  20. 299 0
      src/main/java/com/imed/costaccount/service/impl/CostNumberBedSetServiceImpl.java
  21. 111 0
      src/main/java/com/imed/costaccount/service/impl/CostOtherPaymentsServiceImpl.java
  22. 5 1
      src/main/java/com/imed/costaccount/service/impl/CostShareParamServiceImpl.java
  23. 2 0
      src/main/java/com/imed/costaccount/service/impl/ReportFormServiceImpl.java
  24. 113 0
      src/main/java/com/imed/costaccount/web/CostNumberBedSetController.java
  25. 87 0
      src/main/java/com/imed/costaccount/web/CostOtherPaymentsController.java
  26. 1 0
      src/main/java/com/imed/costaccount/web/CostShareParamController.java
  27. 22 0
      src/main/resources/mapper/CostNumberBedSetMapper.xml
  28. 17 0
      src/main/resources/mapper/CostOtherPaymentsMapper.xml

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

@@ -0,0 +1,16 @@
+package com.imed.costaccount.mapper;
+
+import com.imed.costaccount.model.CostNumberBedSet;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 诊次/床日设置
+ * 
+ * @author KCYG
+ * @date 2021-08-09 11:11:06
+ */
+@Mapper
+public interface CostNumberBedSetMapper extends BaseMapper<CostNumberBedSet> {
+	
+}

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

@@ -0,0 +1,16 @@
+package com.imed.costaccount.mapper;
+
+import com.imed.costaccount.model.CostOtherPayments;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 全院其他收支设置
+ * 
+ * @author KCYG
+ * @date 2021-08-09 17:53:22
+ */
+@Mapper
+public interface CostOtherPaymentsMapper extends BaseMapper<CostOtherPayments> {
+	
+}

+ 75 - 0
src/main/java/com/imed/costaccount/model/CostNumberBedSet.java

@@ -0,0 +1,75 @@
+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-08-09 11:48:01
+ */
+@Data
+@Accessors(chain = true)
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName("cost_number_bed_set")
+public class CostNumberBedSet implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 主键  文件编号
+	 */
+	@TableId
+	private Long id;
+	/**
+	 * 分配方式 1按照收入比例分配 2 按照固定比例分配
+	 */
+	private Integer allocation;
+	/**
+	 * 收入方式 1 门诊方式 2 住院方式
+	 */
+	private Integer incomeType;
+	/**
+	 * 成本分摊参数
+	 */
+	private String shareParamCode;
+	/**
+	 * 收入字段 对应报表的编号
+	 */
+	private Integer incomeFieldNum;
+	/**
+	 * 收入字段名称
+	 */
+	private String incomeFileName;
+	/**
+	 * 成本对应 对应的是报表项目的编号
+	 */
+	private Integer costCorresponding;
+	/**
+	 * 成本对应名称
+	 */
+	private String costCorrespondingName;
+	/**
+	 * 医院Id
+	 */
+	private Long hospId;
+	/**
+	 * 创建时间13位时间戳
+	 */
+	private Long createTime;
+	/**
+	 * 删除时间,如果存在表示已删除13位时间戳
+	 */
+	@TableLogic(value = "0",delval = "UNIX_TIMESTAMP(NOW()) * 1000")
+	private Long deleteTime;
+
+}

+ 53 - 0
src/main/java/com/imed/costaccount/model/CostOtherPayments.java

@@ -0,0 +1,53 @@
+package com.imed.costaccount.model;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+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-08-09 17:53:22
+ */
+@Data
+@Accessors(chain = true)
+@AllArgsConstructor
+@NoArgsConstructor
+@TableName("cost_other_payments")
+public class CostOtherPayments implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 主键
+	 */
+	@TableId
+	private Long id;
+	/**
+	 * 收支类型 1收入 2支出
+	 */
+	private Integer paymentsType;
+	/**
+	 * 收支名称
+	 */
+	private String paymentsName;
+	/**
+	 * 医院的Id
+	 */
+	private Long hospId;
+	/**
+	 * 创建时间
+	 */
+	private Long createTime;
+	/**
+	 * 删除时间
+	 */
+	private Long deleteTime;
+
+}

+ 18 - 0
src/main/java/com/imed/costaccount/model/dto/CheckShareParamStatusDto.java

@@ -0,0 +1,18 @@
+package com.imed.costaccount.model.dto;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+
+/**
+ * @author 李加喜
+ * @Package com.imed.costaccount.model.dto
+ * @date 2021-08-09 15:17
+ */
+@Data
+@ApiModel("显示分摊参数与关联对应的状态")
+public class CheckShareParamStatusDto {
+    /**
+     * 诊次/床日的Id
+     */
+    private Long costNumberBedSetId;
+}

+ 20 - 0
src/main/java/com/imed/costaccount/model/dto/CostNumberBedSetEditDto.java

@@ -0,0 +1,20 @@
+package com.imed.costaccount.model.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author 李加喜
+ * @Package com.imed.costaccount.model.dto
+ * @date 2021-08-09 15:03
+ */
+@Data
+@ApiModel("诊次/床日设置修改实体类")
+public class CostNumberBedSetEditDto extends CostNumberBedSetSaveDto{
+    @ApiModelProperty(name = "id",value = "设置的Id")
+    @NotNull(message = "原始Id不能为空")
+    private Long id;
+}

+ 50 - 0
src/main/java/com/imed/costaccount/model/dto/CostNumberBedSetSaveDto.java

@@ -0,0 +1,50 @@
+package com.imed.costaccount.model.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author 李加喜
+ * @Package com.imed.costaccount.model.dto
+ * @date 2021-08-09 14:28
+ */
+@Data
+@ApiModel("诊次/床日设置数据保存的实体类")
+public class CostNumberBedSetSaveDto {
+    @ApiModelProperty(name = "allocation",value = "分配方式 1按照收入比例分配 2 按照固定比例分配")
+    @NotNull(message = "分配方式不能为空")
+    private Integer allocation;
+
+    @ApiModelProperty(name = "incomeType",value = "收入方式 1 门诊方式 2 住院方式")
+    @NotNull(message = "收入方式不能为空")
+    private Integer incomeType;
+
+    @ApiModelProperty(name = "shareParamCode",value = "成本分摊参数代码")
+    @NotNull(message = "成本分摊参数的代码不能为空")
+    private String shareParamCode;
+
+    @ApiModelProperty(name = "shareParamName",value = "成本分摊参数名称")
+    private String shareParamName;
+
+    @ApiModelProperty(name = "incomeFieldNum",value = "收入字段 对应报表的编号")
+    @NotNull(message = "收入字段的编号不能为空")
+    private Integer incomeFieldNum;
+
+    @ApiModelProperty(name = "incomeFileName",value = "收入字段名称")
+    private String incomeFileName;
+
+    @ApiModelProperty(name = "costCorresponding",value = "成本对应 对应的是报表项目的编号")
+    @NotNull(message = "成本对应的编号不能为空")
+    private Integer costCorresponding;
+
+    @ApiModelProperty(name = "costCorrespondingName",value = "成本对应名称")
+    private String costCorrespondingName;
+    /**
+     * 报表类型
+     */
+    private Integer reportType;
+
+}

+ 21 - 0
src/main/java/com/imed/costaccount/model/dto/CostOtherPaymentsEditDto.java

@@ -0,0 +1,21 @@
+package com.imed.costaccount.model.dto;
+
+import com.imed.costaccount.model.vo.CostOtherPaymentsSaveDto;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author 李加喜
+ * @Package com.imed.costaccount.model.dto
+ * @date 2021-08-09 19:18
+ */
+@Data
+@ApiModel("修改全院其他收支设置")
+public class CostOtherPaymentsEditDto extends CostOtherPaymentsSaveDto {
+    @ApiModelProperty(name = "id",value = "主键")
+    @NotNull(message = "原始Id不能为空")
+    private Long id;
+}

+ 19 - 0
src/main/java/com/imed/costaccount/model/vo/CheckShareParamStatusVO.java

@@ -0,0 +1,19 @@
+package com.imed.costaccount.model.vo;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+
+/**
+ * @author 李加喜
+ * @Package com.imed.costaccount.model.vo
+ * @date 2021-08-09 15:19
+ */
+@Data
+@ApiModel("显示分摊参数状态")
+public class CheckShareParamStatusVO extends CostShareParamVO {
+    /**
+     * 分摊参数是否存在关联指定的 诊次/床日的状态 0没有 1 有
+     */
+
+    private Integer shareParamNumberBedSetStatus=0;
+}

+ 42 - 0
src/main/java/com/imed/costaccount/model/vo/CostNumberBedSetVO.java

@@ -0,0 +1,42 @@
+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-08-09 13:35
+ */
+@Data
+@ApiModel("诊次/床日分页查询实体类")
+public class CostNumberBedSetVO {
+
+    @ApiModelProperty(name = "id",value = "诊次/床日设置的Id")
+    private Long id;
+
+    @ApiModelProperty(name = "allocation",value = "分配方式 1按照收入比例分配 2 按照固定比例分配")
+    private Integer allocation;
+
+    @ApiModelProperty(name = "incomeType",value = "收入方式 1 门诊方式 2 住院方式")
+    private Integer incomeType;
+
+    @ApiModelProperty(name = "shareParamCode",value = "成本分摊参数代码")
+    private String shareParamCode;
+
+    @ApiModelProperty(name = "shareParamName",value = "成本分摊参数名称")
+    private String shareParamName;
+
+    @ApiModelProperty(name = "incomeFieldNum",value = "收入字段 对应报表的编号")
+    private Integer incomeFieldNum;
+
+    @ApiModelProperty(name = "incomeFileName",value = "收入字段名称")
+    private String incomeFileName;
+
+    @ApiModelProperty(name = "costCorresponding",value = "成本对应 对应的是报表项目的编号")
+    private Integer costCorresponding;
+
+    @ApiModelProperty(name = "costCorrespondingName",value = "成本对应名称")
+    private String costCorrespondingName;
+}

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

@@ -0,0 +1,27 @@
+package com.imed.costaccount.model.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * @author 李加喜
+ * @Package com.imed.costaccount.model.vo
+ * @date 2021-08-09 18:27
+ */
+@Data
+@ApiModel("保存全院其他收支设置")
+public class CostOtherPaymentsSaveDto{
+
+    @ApiModelProperty(name = "paymentsType",value = "收支类型 1收入 2支出")
+    @NotNull(message = "收支类型不能为空")
+    private Integer paymentsType;
+    /**
+     * 收支名称
+     */
+    @ApiModelProperty(name = "paymentsName",value = "收支名称")
+    @NotNull(message = "收支名称不能为空")
+    private String paymentsName;
+}

+ 30 - 0
src/main/java/com/imed/costaccount/model/vo/CostOtherPaymentsVO.java

@@ -0,0 +1,30 @@
+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-08-09 18:02
+ */
+@Data
+@ApiModel("全员其他收支设置分页返回实体类")
+public class CostOtherPaymentsVO {
+    /**
+     * 主键
+     */
+    @ApiModelProperty(name = "id",value = "主键")
+    private Long id;
+    /**
+     * 收支类型 1收入 2支出
+     */
+    @ApiModelProperty(name = "paymentsType",value = "收支类型 1收入 2支出")
+    private Integer paymentsType;
+    /**
+     * 收支名称
+     */
+    @ApiModelProperty(name = "paymentsName",value = "收支名称")
+    private String paymentsName;
+}

+ 0 - 16
src/main/java/com/imed/costaccount/model/vo/CostResponsibilityTreeVO.java

@@ -1,16 +0,0 @@
-package com.imed.costaccount.model.vo;
-
-import io.swagger.annotations.ApiModel;
-import lombok.Data;
-
-/**
- * @author 李加喜
- * @Package com.imed.costaccount.model.vo
- * @date 2021-08-03 10:46
- */
-@Data
-@ApiModel("责任中心的树形结构")
-public class CostResponsibilityTreeVO extends CostResponsibilityVO{
-
-
-}

+ 19 - 0
src/main/java/com/imed/costaccount/model/vo/ReportFormCheckStatusVO.java

@@ -0,0 +1,19 @@
+package com.imed.costaccount.model.vo;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+
+/**
+ * @author 李加喜
+ * @Package com.imed.costaccount.model.vo
+ * @date 2021-08-09 16:56
+ */
+@Data
+@ApiModel("检查报表与诊次/床日")
+public class ReportFormCheckStatusVO extends ReportFormVO{
+
+    /**
+     * 报表与诊次床日关联的状态
+     */
+    private Integer reportNumberSetStatus;
+}

+ 5 - 0
src/main/java/com/imed/costaccount/model/vo/ReportFormVO.java

@@ -40,4 +40,9 @@ public class ReportFormVO {
     @JsonInclude(JsonInclude.Include.NON_NULL)
     private List<RelationVO> reportRelations;
 
+    /**
+     * 报表与诊次床日关联的状态
+     */
+    private Integer reportNumberSetStatus=0;
+
 }

+ 70 - 0
src/main/java/com/imed/costaccount/service/CostNumberBedSetService.java

@@ -0,0 +1,70 @@
+package com.imed.costaccount.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.model.CostNumberBedSet;
+import com.imed.costaccount.model.dto.CostNumberBedSetEditDto;
+import com.imed.costaccount.model.dto.CostNumberBedSetSaveDto;
+import com.imed.costaccount.model.vo.CheckShareParamStatusVO;
+import com.imed.costaccount.model.vo.CostNumberBedSetVO;
+import com.imed.costaccount.model.vo.ReportFormVO;
+
+import java.util.List;
+
+/**
+ * 诊次/床日设置
+ *
+ * @author KCYG
+ * @email KCYG@xinxicom
+ * @date 2021-08-09 11:11:06
+ */
+public interface CostNumberBedSetService extends IService<CostNumberBedSet> {
+    /**
+     * 分页查询诊次/床日设置
+     * @param current
+     * @param pageSize
+     * @param name
+     * @param hospId
+     * @return
+     */
+    PageUtils queryList(Integer current, Integer pageSize, String name, Long hospId);
+
+    /**
+     * 根据Id获取诊次/床日设置的数据
+     * @param id
+     * @return
+     */
+    CostNumberBedSetVO getByNumberBedId(Long id);
+
+    /**
+     * 添加诊次/床日设置的数据
+     * @param costNumberBedSetSaveDto
+     * @param hospId
+     */
+    void addNumberBedSet(CostNumberBedSetSaveDto costNumberBedSetSaveDto, Long hospId);
+
+    /**
+     * 修改诊次/床日的设置数据
+     * @param costNumberBedSetEditDto
+     * @param hospId
+     */
+    void updateNumberBedById(CostNumberBedSetEditDto costNumberBedSetEditDto, Long hospId);
+
+    /**
+     * 获取当前诊次/床日设置里面关联的成本分摊参数
+     * @param id
+     * @param hospId
+     * @return
+     */
+    List<CheckShareParamStatusVO> checkStatus(Long id, Long hospId);
+
+    /**
+     * 获取报表  显示报表被选中的状态
+     * @param reportType 报表类型
+     * @param hospId 医院Id
+     * @param id
+     * @return
+     */
+    List<ReportFormVO> getReportNumberBedStatus(Integer reportType, Long hospId, Integer id);
+}
+

+ 47 - 0
src/main/java/com/imed/costaccount/service/CostOtherPaymentsService.java

@@ -0,0 +1,47 @@
+package com.imed.costaccount.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.model.CostOtherPayments;
+import com.imed.costaccount.model.dto.CostOtherPaymentsEditDto;
+import com.imed.costaccount.model.vo.CostOtherPaymentsSaveDto;
+import com.imed.costaccount.model.vo.CostOtherPaymentsVO;
+
+/**
+ * 全院其他收支设置
+ *
+ * @author KCYG
+ * @email KCYG@xinxicom
+ * @date 2021-08-09 17:53:22
+ */
+public interface CostOtherPaymentsService extends IService<CostOtherPayments> {
+    /**
+     * 分压查询全院其他收支设置
+     * @param current
+     * @param pageSize
+     * @param name
+     * @param hospId
+     * @return
+     */
+    PageUtils  queryList(Integer current, Integer pageSize, String name, Long hospId);
+
+    /**
+     * 根据Id获取对应的数据
+     * @param id
+     * @return
+     */
+    CostOtherPaymentsVO getByParamsId(Long id);
+
+    /**
+     *添加全院其他收支设置
+     * @param costOtherPaymentsSaveDto
+     */
+    void addOtherPayment(CostOtherPaymentsSaveDto costOtherPaymentsSaveDto);
+
+    /**
+     * 修改全院其他收支设置
+     * @param costOtherPaymentsEditDto
+     */
+    void updateOtherPaymentById(CostOtherPaymentsEditDto costOtherPaymentsEditDto);
+}
+

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

@@ -63,5 +63,6 @@ public interface CostShareParamService extends IService<CostShareParam> {
 
     List<Integer> selectIsSelect(Integer shareParamId);
 
+
 }
 

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

@@ -112,7 +112,7 @@ public class AccountingServiceImpl extends ServiceImpl<AccountingMapper, Account
      * @param user
      */
     @Override
-    @Transactional(propagation = Propagation.REQUIRED)
+    @Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
     public void saveAccounting(AccountingSaveDTO accountingSaveDTO, User user) {
         // 校验会计科目代码
         this.checkAccountingCode(accountingSaveDTO.getAccountingCode(), user.getHospId());

+ 299 - 0
src/main/java/com/imed/costaccount/service/impl/CostNumberBedSetServiceImpl.java

@@ -0,0 +1,299 @@
+package com.imed.costaccount.service.impl;
+
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
+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.exception.CostException;
+import com.imed.costaccount.common.util.BeanUtil;
+import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.common.util.UserContext;
+import com.imed.costaccount.constants.NumberConstant;
+import com.imed.costaccount.mapper.CostNumberBedSetMapper;
+import com.imed.costaccount.model.CostNumberBedSet;
+import com.imed.costaccount.model.CostShareParam;
+import com.imed.costaccount.model.ReportForm;
+import com.imed.costaccount.model.dto.CostNumberBedSetEditDto;
+import com.imed.costaccount.model.dto.CostNumberBedSetSaveDto;
+import com.imed.costaccount.model.vo.CheckShareParamStatusVO;
+import com.imed.costaccount.model.vo.CostNumberBedSetVO;
+import com.imed.costaccount.model.vo.ReportFormVO;
+import com.imed.costaccount.service.CostNumberBedSetService;
+import com.imed.costaccount.service.CostShareParamService;
+import com.imed.costaccount.service.ReportFormService;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+
+@Service("costNumberBedSetService")
+public class CostNumberBedSetServiceImpl extends ServiceImpl<CostNumberBedSetMapper, CostNumberBedSet> implements CostNumberBedSetService {
+
+
+    private final CostShareParamService costShareParamService;
+
+    private final ReportFormService reportFormService;
+
+    public CostNumberBedSetServiceImpl(CostShareParamService costShareParamService, ReportFormService reportFormService) {
+        this.costShareParamService = costShareParamService;
+        this.reportFormService = reportFormService;
+    }
+
+    /**
+     * 分页查询诊次/床日设置
+     *
+     * @param current
+     * @param pageSize
+     * @param name
+     * @param hospId
+     * @return
+     */
+    @Override
+    public PageUtils queryList(Integer current, Integer pageSize, String name, Long hospId) {
+        Page<CostNumberBedSet> costNumberBedSetPage = new Page<>(current, pageSize);
+        Page<CostNumberBedSet> pages = this.page(costNumberBedSetPage, new QueryWrapper<CostNumberBedSet>().lambda()
+                .eq(CostNumberBedSet::getHospId, hospId)
+                .like(StrUtil.isNotBlank(name),CostNumberBedSet::getIncomeFileName,name));
+        List<CostNumberBedSet> records = pages.getRecords();
+        List<CostNumberBedSetVO> costNumberBedSetVOList = BeanUtil.convertList(records, CostNumberBedSetVO.class);
+        // 具体的名称根据Code  Id 进行获取
+        Map<String, String> costShareParamMap = costShareParamService.list(new QueryWrapper<CostShareParam>().lambda()
+                .eq(CostShareParam::getHospId, hospId)).stream().collect(Collectors.toMap(CostShareParam::getShareParamCode, CostShareParam::getShareParamName));
+        Map<Integer, ReportForm> reportFormMap = reportFormService.list(new QueryWrapper<ReportForm>().lambda().eq(ReportForm::getHospId, hospId)).stream().collect(Collectors.toMap(ReportForm::getNum, synOe -> synOe));
+        costNumberBedSetVOList.forEach(i->{
+            setName(costShareParamMap, reportFormMap, i);
+        });
+        PageUtils pageUtils = new PageUtils(pages);
+        pageUtils.setList(costNumberBedSetVOList);
+        return pageUtils;
+    }
+
+    /**
+     * 设置成本分摊参数的名称  相关报表的名称
+     * @param costShareParamMap
+     * @param reportFormMap
+     * @param i
+     */
+    private void setName(Map<String, String> costShareParamMap, Map<Integer, ReportForm> reportFormMap, CostNumberBedSetVO i) {
+        String shareParamCode = i.getShareParamCode();
+        String shareParamName = costShareParamMap.get(shareParamCode);
+        if (StrUtil.isNotBlank(shareParamName)){
+            i.setShareParamName(shareParamName);
+        }
+        Integer incomeFieldNum = i.getIncomeFieldNum();
+        Integer costCorresponding = i.getCostCorresponding();
+        ReportForm reportForm = reportFormMap.get(incomeFieldNum);
+        ReportForm reportForm1 = reportFormMap.get(costCorresponding);
+        if (Objects.nonNull(reportForm)){
+            Integer reportType = reportForm.getReportType();
+            String reportName = reportForm.getReportName();
+            reportName = getString(reportType, reportName);
+            i.setIncomeFileName(reportName);
+        }
+        if (Objects.nonNull(reportForm1)){
+            Integer reportType = reportForm1.getReportType();
+            String costCorrespondingName = reportForm1.getReportName();
+            costCorrespondingName = getString(reportType, costCorrespondingName);
+            i.setCostCorrespondingName(costCorrespondingName);
+        }
+    }
+
+    /**
+     * 根据Id获取诊次/床日设置的数据
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public CostNumberBedSetVO getByNumberBedId(Long id) {
+        Long hospId = UserContext.getHospId();
+        CostNumberBedSet costNumberBedSet = this.getById(id);
+        // 具体的名称根据Code  Id 进行获取
+        Map<String, String> costShareParamMap = costShareParamService.list(new QueryWrapper<CostShareParam>().lambda()
+                .eq(CostShareParam::getHospId, hospId)).stream().collect(Collectors.toMap(CostShareParam::getShareParamCode, CostShareParam::getShareParamName));
+        Map<Integer, ReportForm> reportFormMap = reportFormService.list(new QueryWrapper<ReportForm>().lambda().eq(ReportForm::getHospId, hospId)).stream().collect(Collectors.toMap(ReportForm::getNum, synOe -> synOe));
+        CostNumberBedSetVO costNumberBedSetVO = BeanUtil.convertObj(costNumberBedSet, CostNumberBedSetVO.class);
+        if (Objects.nonNull(costNumberBedSet)){
+            setName(costShareParamMap,reportFormMap,costNumberBedSetVO);
+            return costNumberBedSetVO;
+        }
+        return null;
+    }
+    private String getString(Integer reportType, String reportName) {
+        switch (reportType) {
+            case 0:
+                reportName = "损益表" + reportName;
+                break;
+            case 1:
+                reportName = "完全成本法表" + reportName;
+                break;
+            case 2:
+                reportName = "变动成本表" + reportName;
+                break;
+            case 3:
+                reportName = "全院损益表" + reportName;
+                break;
+            case 4:
+                reportName = "全成本报表" + reportName;
+                break;
+            default:
+                reportName = "";
+        }
+        return reportName;
+    }
+    /**
+     * 添加诊次/床日设置的数据
+     *  后台要考虑支持多选
+     * @param costNumberBedSetSaveDto
+     * @param hospId
+     */
+    @Override
+    @Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
+    public void addNumberBedSet(CostNumberBedSetSaveDto costNumberBedSetSaveDto, Long hospId) {
+        Integer reportType = costNumberBedSetSaveDto.getReportType();
+        if (Objects.isNull(reportType) || !NumberConstant.ZERO.equals(reportType) || NumberConstant.THREE.equals(reportType)){
+            throw new CostException(500,"报表类型错误");
+        }
+        String shareParamCodes = costNumberBedSetSaveDto.getShareParamCode();
+        Integer incomeFieldNums = costNumberBedSetSaveDto.getIncomeFieldNum();
+        CostNumberBedSet costNumberBedSet = this.getOne(new QueryWrapper<CostNumberBedSet>().lambda().eq(CostNumberBedSet::getHospId, hospId)
+                .eq(CostNumberBedSet::getShareParamCode, shareParamCodes)
+                .eq(CostNumberBedSet::getIncomeFieldNum, incomeFieldNums));
+        if (Objects.nonNull(costNumberBedSet)){
+            throw new CostException(500,"数据已经存在");
+        }
+        CostNumberBedSet costNumberBedSetRequest = BeanUtil.convertObj(costNumberBedSetSaveDto, CostNumberBedSet.class);
+        costNumberBedSetRequest.setCreateTime(System.currentTimeMillis());
+        costNumberBedSetRequest.setHospId(hospId);
+        this.save(costNumberBedSetRequest);
+    }
+
+    /**
+     * 修改诊次/床日的设置数据
+     *
+     * @param costNumberBedSetEditDto
+     * @param hospId
+     */
+    @Override
+    @Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
+    public void updateNumberBedById(CostNumberBedSetEditDto costNumberBedSetEditDto, Long hospId) {
+        Integer reportType = costNumberBedSetEditDto.getReportType();
+        if (Objects.isNull(reportType) || !NumberConstant.ZERO.equals(reportType) || NumberConstant.THREE.equals(reportType)){
+            throw new CostException(500,"报表类型错误");
+        }
+        Long id = costNumberBedSetEditDto.getId();
+        CostNumberBedSet costNumberBedSet = this.getById(id);
+        if (Objects.isNull(costNumberBedSet)){
+            throw new CostException(500,"原始数据不存在");
+        }
+        String shareParamCodes = costNumberBedSetEditDto.getShareParamCode();
+        Integer incomeFieldNums = costNumberBedSetEditDto.getIncomeFieldNum();
+        CostNumberBedSet costNumberBedSetResponse = this.getOne(new QueryWrapper<CostNumberBedSet>().lambda().eq(CostNumberBedSet::getHospId, hospId)
+                .eq(CostNumberBedSet::getShareParamCode, shareParamCodes)
+                .eq(CostNumberBedSet::getIncomeFieldNum, incomeFieldNums));
+        if (Objects.nonNull(costNumberBedSetResponse)){
+            throw new CostException(500,"数据已经存在");
+        }
+        this.removeById(id);
+        CostNumberBedSet costNumberBedSetRequest = BeanUtil.convertObj(costNumberBedSetEditDto, CostNumberBedSet.class);
+        costNumberBedSetRequest.setHospId(hospId);
+        costNumberBedSetRequest.setCreateTime(System.currentTimeMillis());
+        costNumberBedSetRequest.setId(null);
+        this.save(costNumberBedSetRequest);
+    }
+
+    /**
+     * 获取当前诊次/床日设置里面关联的成本分摊参数
+     *
+     * @param id
+     * @param hospId
+     * @return
+     */
+    @Override
+    public List<CheckShareParamStatusVO> checkStatus(Long id, Long hospId) {
+        List<CostShareParam> costShareParamList = costShareParamService.list(new QueryWrapper<CostShareParam>().lambda()
+                .eq(CostShareParam::getHospId, hospId));
+        CostNumberBedSet costNumberBedSet = this.getById(id);
+        String shareParamCode=null;
+        if (Objects.nonNull(costNumberBedSet)){
+            shareParamCode = costNumberBedSet.getShareParamCode();
+        }
+        List<CheckShareParamStatusVO> checkShareParamStatusVOList = BeanUtil.convertList(costShareParamList, CheckShareParamStatusVO.class);
+        String finalShareParamCode = shareParamCode;
+        checkShareParamStatusVOList.forEach(i->{
+            String code = i.getShareParamCode();
+            if (code.equals(finalShareParamCode)){
+                i.setShareParamNumberBedSetStatus(NumberConstant.ONE);
+            }
+        });
+        return checkShareParamStatusVOList;
+    }
+
+    /**
+     * 获取报表  显示报表被选中的状态
+     *
+     * @param reportType 报表类型
+     * @param hospId     医院Id
+     * @param id
+     * @return
+     */
+    @Override
+    @Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
+    public List<ReportFormVO> getReportNumberBedStatus(Integer reportType, Long hospId, Integer id) {
+        List<ReportForm> list = reportFormService.list(new QueryWrapper<ReportForm>().lambda()
+                .eq(ReportForm::getReportType, reportType)
+                .eq(ReportForm::getHospId, hospId)
+                .orderByAsc(ReportForm::getSort));
+
+        if (CollUtil.isEmpty(list)) {
+            return Collections.emptyList();
+        }
+        List<ReportFormVO> reportFormVOS = list.stream().map(i -> {
+            ReportFormVO reportFormVO = BeanUtil.convertObj(i, ReportFormVO.class);
+            if (i.getCalcType() == 1) {
+                reportFormVO.setShowAddRelation(1);
+            } else if (i.getCalcType() == 2) {
+                reportFormVO.setShowAddRelation(2);
+            }
+            return reportFormVO;
+        }).collect(Collectors.toList());
+
+        if (Objects.nonNull(id)){
+            CostNumberBedSet costNumberBedSet = this.getById(id);
+            if (Objects.nonNull(costNumberBedSet)){
+                Integer incomeFieldNum = costNumberBedSet.getIncomeFieldNum();
+                Integer costCorresponding = costNumberBedSet.getCostCorresponding();
+                reportFormVOS.forEach(i->{
+                    if (incomeFieldNum.equals(i.getNum()) && NumberConstant.ZERO.equals(reportType)){
+                        i.setReportNumberSetStatus(NumberConstant.ONE);
+                    }else if (costCorresponding.equals(i.getNum()) && NumberConstant.THREE.equals(reportType)){
+                        i.setReportNumberSetStatus(NumberConstant.ONE);
+                    }
+                });
+            }
+        }
+
+
+        List<ReportFormVO> roots = reportFormVOS.stream().filter(i -> i.getParentId() == 0L).collect(Collectors.toList());
+        for (ReportFormVO root : roots) {
+            List<ReportFormVO> children = root.getChildren();
+            if (CollUtil.isEmpty(children)) {
+                children = new ArrayList<>();
+            }
+            for (ReportFormVO reportFormVO : reportFormVOS) {
+                if (reportFormVO.getParentId().equals(root.getId())) {
+                    children.add(reportFormVO);
+//                    this.setRelation(reportFormVO, user.getHospId());
+                }
+            }
+            root.setChildren(children);
+        }
+        return roots;
+    }
+
+
+}

+ 111 - 0
src/main/java/com/imed/costaccount/service/impl/CostOtherPaymentsServiceImpl.java

@@ -0,0 +1,111 @@
+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.exception.CostException;
+import com.imed.costaccount.common.util.BeanUtil;
+import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.common.util.UserContext;
+import com.imed.costaccount.mapper.CostOtherPaymentsMapper;
+import com.imed.costaccount.model.CostOtherPayments;
+import com.imed.costaccount.model.dto.CostOtherPaymentsEditDto;
+import com.imed.costaccount.model.vo.CostOtherPaymentsSaveDto;
+import com.imed.costaccount.model.vo.CostOtherPaymentsVO;
+import com.imed.costaccount.service.CostOtherPaymentsService;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+import java.util.Objects;
+
+
+@Service("costOtherPaymentsService")
+public class CostOtherPaymentsServiceImpl extends ServiceImpl<CostOtherPaymentsMapper, CostOtherPayments> implements CostOtherPaymentsService {
+
+
+    /**
+     * 分压查询全院其他收支设置
+     *
+     * @param current
+     * @param pageSize
+     * @param name
+     * @param hospId
+     * @return
+     */
+    @Override
+    public PageUtils queryList(Integer current, Integer pageSize, String name, Long hospId) {
+        Page<CostOtherPayments> costOtherPaymentsPage = new Page<>(current, pageSize);
+        Page<CostOtherPayments> pages = this.page(costOtherPaymentsPage, new QueryWrapper<CostOtherPayments>().lambda().eq(CostOtherPayments::getHospId, hospId));
+        List<CostOtherPayments> records = pages.getRecords();
+        List<CostOtherPaymentsVO> costOtherPaymentsVOList = BeanUtil.convertList(records, CostOtherPaymentsVO.class);
+        PageUtils pageUtils = new PageUtils(pages);
+        pageUtils.setList(costOtherPaymentsVOList);
+        return pageUtils;
+    }
+
+    /**
+     * 根据Id获取对应的数据
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public CostOtherPaymentsVO getByParamsId(Long id) {
+        CostOtherPayments costOtherPayments = this.getById(id);
+        if (Objects.isNull(costOtherPayments)){
+            return null;
+        }
+        CostOtherPaymentsVO costOtherPaymentsVO = BeanUtil.convertObj(costOtherPayments, CostOtherPaymentsVO.class);
+        return costOtherPaymentsVO;
+    }
+
+    /**
+     * @param costOtherPaymentsSaveDto
+     */
+    @Override
+    @Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
+    public void addOtherPayment(CostOtherPaymentsSaveDto costOtherPaymentsSaveDto) {
+        Long hospId = UserContext.getHospId();
+        CostOtherPayments otherPayments = this.getOne(new QueryWrapper<CostOtherPayments>().lambda().eq(CostOtherPayments::getHospId, hospId)
+        .eq(CostOtherPayments::getPaymentsName,costOtherPaymentsSaveDto.getPaymentsName())
+        .eq(CostOtherPayments::getPaymentsType,costOtherPaymentsSaveDto.getPaymentsType()));
+        if (Objects.nonNull(otherPayments)){
+            throw new CostException(500,"数据已存在");
+        }
+        CostOtherPayments costOtherPayments = BeanUtil.convertObj(costOtherPaymentsSaveDto, CostOtherPayments.class);
+        costOtherPayments.setHospId(hospId);
+        costOtherPayments.setCreateTime(System.currentTimeMillis());
+        this.save(costOtherPayments);
+    }
+
+    /**
+     * 修改全院其他收支设置
+     *
+     * @param costOtherPaymentsEditDto
+     */
+    @Override
+    @Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)
+    public void updateOtherPaymentById(CostOtherPaymentsEditDto costOtherPaymentsEditDto) {
+        Long hospId = UserContext.getHospId();
+        Long id = costOtherPaymentsEditDto.getId();
+        CostOtherPayments otherPayments = this.getOne(new QueryWrapper<CostOtherPayments>().lambda().eq(CostOtherPayments::getHospId, hospId)
+                .eq(CostOtherPayments::getId,id));
+        if (Objects.isNull(otherPayments)){
+            throw new CostException(500,"原始数据不存在");
+        }
+        CostOtherPayments otherPaymentResponse = this.getOne(new QueryWrapper<CostOtherPayments>().lambda().eq(CostOtherPayments::getHospId, hospId)
+                .eq(CostOtherPayments::getPaymentsName,costOtherPaymentsEditDto.getPaymentsName())
+                .eq(CostOtherPayments::getPaymentsType,costOtherPaymentsEditDto.getPaymentsType()));
+        if (Objects.nonNull(otherPaymentResponse)){
+            throw new CostException(500,"修改后的数据已存在");
+        }
+        this.removeById(id);
+        CostOtherPayments costOtherPayments = BeanUtil.convertObj(costOtherPaymentsEditDto, CostOtherPayments.class);
+        costOtherPayments.setCreateTime(System.currentTimeMillis());
+        costOtherPayments.setId(null);
+        costOtherPayments.setHospId(hospId);
+        this.save(costOtherPayments);
+    }
+}

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

@@ -8,13 +8,18 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.imed.costaccount.common.exception.CostException;
 import com.imed.costaccount.common.util.BeanUtil;
 import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.common.util.UserContext;
 import com.imed.costaccount.constants.NumberConstant;
 import com.imed.costaccount.mapper.CostShareParamMapper;
+import com.imed.costaccount.model.CostNumberBedSet;
 import com.imed.costaccount.model.CostShareParam;
+import com.imed.costaccount.model.dto.CheckShareParamStatusDto;
 import com.imed.costaccount.model.dto.CostShareParamAccountDto;
 import com.imed.costaccount.model.dto.CostShareParamEditDto;
 import com.imed.costaccount.model.dto.CostShareParamSaveDto;
+import com.imed.costaccount.model.vo.CheckShareParamStatusVO;
 import com.imed.costaccount.model.vo.CostShareParamVO;
+import com.imed.costaccount.service.CostNumberBedSetService;
 import com.imed.costaccount.service.CostShareParamService;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.stereotype.Service;
@@ -30,7 +35,6 @@ import java.util.stream.Collectors;
 @Service("costShareParamService")
 public class CostShareParamServiceImpl extends ServiceImpl<CostShareParamMapper, CostShareParam> implements CostShareParamService {
 
-
     /**
      * 分页查询相关的分摊参数数据
      *

+ 2 - 0
src/main/java/com/imed/costaccount/service/impl/ReportFormServiceImpl.java

@@ -66,6 +66,8 @@ public class ReportFormServiceImpl extends ServiceImpl<ReportFormMapper, ReportF
             return reportFormVO;
         }).collect(Collectors.toList());
 
+
+
         List<ReportFormVO> roots = reportFormVOS.stream().filter(i -> i.getParentId() == 0L).collect(Collectors.toList());
         for (ReportFormVO root : roots) {
             List<ReportFormVO> children = root.getChildren();

+ 113 - 0
src/main/java/com/imed/costaccount/web/CostNumberBedSetController.java

@@ -0,0 +1,113 @@
+package com.imed.costaccount.web;
+
+import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.common.util.Result;
+import com.imed.costaccount.common.util.UserContext;
+import com.imed.costaccount.model.dto.CostNumberBedSetEditDto;
+import com.imed.costaccount.model.dto.CostNumberBedSetSaveDto;
+import com.imed.costaccount.model.vo.CheckShareParamStatusVO;
+import com.imed.costaccount.model.vo.CostNumberBedSetVO;
+import com.imed.costaccount.model.vo.ReportFormVO;
+import com.imed.costaccount.service.CostNumberBedSetService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.Arrays;
+import java.util.List;
+
+
+/**
+ * 诊次/床日设置
+ *
+ * @author KCYG
+ * @date 2021-08-09 11:11:06
+ */
+@RestController
+@RequestMapping("/costAccount/costnumberbedset")
+@Api(tags = "诊次/床日设置操作")
+public class CostNumberBedSetController {
+    @Autowired
+    private CostNumberBedSetService costNumberBedSetService;
+
+    /**
+     * 分页查询列表
+     * 查询的是
+     */
+    @GetMapping("/list")
+    @ApiOperation("分页查询诊次/床日成本设置")
+    public Result list(@RequestParam(value = "current", defaultValue = "1") Integer current,
+                       @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
+                       @RequestParam(value = "name",required = false) String name){
+        Long hospId = UserContext.getHospId();
+        PageUtils pageUtils = costNumberBedSetService.queryList(current,pageSize,name,hospId);
+        return Result.ok(pageUtils);
+    }
+
+
+    /**
+     * 信息
+     */
+    @GetMapping("/info/{id}")
+    @ApiOperation("根据Id获取诊次/床日成本设置")
+    public Result info(@PathVariable("id") Long id){
+		CostNumberBedSetVO costNumberBedSetVO = costNumberBedSetService.getByNumberBedId(id);
+        return Result.ok(costNumberBedSetVO);
+    }
+
+    /**
+     * 保存
+     */
+    @PostMapping("/save")
+    @ApiOperation("保存诊次/床日成本设置")
+    public Result save(@RequestBody @Valid CostNumberBedSetSaveDto costNumberBedSetSaveDto){
+        Long hospId = UserContext.getHospId();
+        costNumberBedSetService.addNumberBedSet(costNumberBedSetSaveDto,hospId);
+        return Result.ok();
+    }
+
+    /**
+     * 修改
+     */
+    @PostMapping("/update")
+    @ApiOperation("修改获取诊次/床日成本设置")
+    public Result update(@RequestBody CostNumberBedSetEditDto costNumberBedSetEditDto){
+        Long hospId = UserContext.getHospId();
+        costNumberBedSetService.updateNumberBedById(costNumberBedSetEditDto,hospId);
+        return Result.ok();
+    }
+
+    /**
+     * 删除
+     */
+    @PostMapping("/delete")
+    @ApiOperation("根据Id的集合删除")
+    public Result delete(@RequestBody Long[] ids){
+		costNumberBedSetService.removeByIds(Arrays.asList(ids));
+        return Result.ok();
+    }
+    /**
+     * 获取当前诊次/床日设置里面关联的成本分摊参数
+     */
+    @GetMapping("/getNumberBedSetShareParam")
+    @ApiOperation("获取所有分摊参数里面与当前对用有关联的")
+    public Result getNumberBedSetShareParam(Long id){
+        Long hospId = UserContext.getHospId();
+        List<CheckShareParamStatusVO> checkShareParamStatusVOList=costNumberBedSetService.checkStatus(id,hospId);
+        return Result.ok(checkShareParamStatusVOList);
+    }
+    /**
+     * 获取报表  显示报表被选中的状态
+     * @param reportType 报表类型
+     */
+    @GetMapping("/getReportNumberBedStatus")
+    @ApiOperation("获取损益表 全院损益表关联的状态")
+    public Result getReportNumberBedStatus(Integer reportType,Integer id){
+        Long hospId = UserContext.getHospId();
+        List<ReportFormVO> reportNumberBedStatus = costNumberBedSetService.getReportNumberBedStatus(reportType, hospId,id);
+        return Result.ok(reportNumberBedStatus);
+    }
+
+}

+ 87 - 0
src/main/java/com/imed/costaccount/web/CostOtherPaymentsController.java

@@ -0,0 +1,87 @@
+package com.imed.costaccount.web;
+
+import com.imed.costaccount.common.util.PageUtils;
+import com.imed.costaccount.common.util.Result;
+import com.imed.costaccount.common.util.UserContext;
+import com.imed.costaccount.model.dto.CostOtherPaymentsEditDto;
+import com.imed.costaccount.model.vo.CostOtherPaymentsSaveDto;
+import com.imed.costaccount.model.vo.CostOtherPaymentsVO;
+import com.imed.costaccount.service.CostOtherPaymentsService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.Arrays;
+
+
+/**
+ * 全院其他收支设置
+ *
+ * @author KCYG
+ * @date 2021-08-09 17:53:22
+ */
+@RestController
+@RequestMapping("/costAccount/costotherpayments")
+@Api(tags = "全院其他收支设置操作")
+public class CostOtherPaymentsController {
+    @Autowired
+    private CostOtherPaymentsService costOtherPaymentsService;
+
+    /**
+     * 分页查询列表
+     * 查询的是
+     */
+    @GetMapping("/list")
+    @ApiOperation("分压查询全院其他收支设置")
+    public Result list(@RequestParam(value = "current", defaultValue = "1") Integer current,
+                       @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
+                       @RequestParam(value = "name",required = false) String name){
+        Long hospId = UserContext.getHospId();
+        PageUtils pageUtils = costOtherPaymentsService.queryList(current,pageSize,name,hospId);
+        return Result.ok(pageUtils);
+    }
+
+
+    /**
+     * 信息
+     */
+    @GetMapping("/info/{id}")
+    @ApiOperation("根据Id查询全院其他收支设置数据")
+    public Result info(@PathVariable("id") Long id){
+		CostOtherPaymentsVO costOtherPaymentsVO = costOtherPaymentsService.getByParamsId(id);
+        return Result.ok(costOtherPaymentsVO);
+    }
+
+    /**
+     * 保存
+     */
+    @PostMapping("/save")
+    @ApiOperation("保存全院其他收支设置数据")
+    public Result save(@RequestBody @Valid CostOtherPaymentsSaveDto costOtherPaymentsSaveDto){
+		costOtherPaymentsService.addOtherPayment(costOtherPaymentsSaveDto);
+        return Result.ok();
+    }
+
+    /**
+     * 修改
+     */
+    @PostMapping("/update")
+    @ApiOperation("修改全院其他收支设置数据")
+    public Result update(@RequestBody @Valid CostOtherPaymentsEditDto costOtherPaymentsEditDto){
+		costOtherPaymentsService.updateOtherPaymentById(costOtherPaymentsEditDto);
+        return Result.ok();
+    }
+
+    /**
+     * 删除
+     */
+    @PostMapping("/delete")
+    @ApiOperation("删除全院其他收支设置数据")
+    public Result delete(@RequestBody Long[] ids){
+		costOtherPaymentsService.removeByIds(Arrays.asList(ids));
+        return Result.ok();
+    }
+
+}

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

@@ -117,4 +117,5 @@ public class CostShareParamController {
         return Result.ok();
     }
 
+
 }

+ 22 - 0
src/main/resources/mapper/CostNumberBedSetMapper.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.imed.costaccount.mapper.CostNumberBedSetMapper">
+
+	<!-- 可根据自己的需求,是否要使用 -->
+    <resultMap type="com.imed.costaccount.model.CostNumberBedSet" id="costNumberBedSetMap">
+        <result property="id" column="id"/>
+        <result property="allocation" column="allocation"/>
+        <result property="incomeType" column="income_type"/>
+        <result property="shareParamCode" column="share_param_code"/>
+        <result property="incomeFieldNum" column="income_field_num"/>
+        <result property="incomeFileName" column="income_file_name"/>
+        <result property="costCorresponding" column="cost_corresponding"/>
+        <result property="costCorrespondingName" column="cost_corresponding_name"/>
+        <result property="hospId" column="hosp_id"/>
+        <result property="createTime" column="create_time"/>
+        <result property="deleteTime" column="delete_time"/>
+    </resultMap>
+
+
+</mapper>

+ 17 - 0
src/main/resources/mapper/CostOtherPaymentsMapper.xml

@@ -0,0 +1,17 @@
+<?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.CostOtherPaymentsMapper">
+
+	<!-- 可根据自己的需求,是否要使用 -->
+    <resultMap type="com.imed.costaccount.model.CostOtherPayments" id="costOtherPaymentsMap">
+        <result property="id" column="id"/>
+        <result property="paymentsType" column="payments_type"/>
+        <result property="paymentsName" column="payments_name"/>
+        <result property="hospId" column="hosp_id"/>
+        <result property="createTime" column="create_time"/>
+        <result property="deleteTime" column="delete_time"/>
+    </resultMap>
+
+
+</mapper>