伦理审查专家新增获取伦理审查专家接收、获取伦理审查专家数量、专家统计详情、专家类型、伦理审查id、专家编号
已修改9个文件
187 ■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewinitiateController.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewopinionsController.java 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceEthicalreviewinitiate.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceEthicalreviewopinions.java 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/EthicalReviewVO.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceEthicalreviewopinionsMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceEthicalreviewopinionsService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceEthicalreviewopinionsServiceImpl.java 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewopinionsMapper.xml 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewinitiateController.java
@@ -1,5 +1,6 @@
package com.ruoyi.web.controller.project;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.annotation.UniqueCheck;
@@ -16,6 +17,7 @@
import com.ruoyi.project.service.IServiceEthicalreviewopinionsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
@@ -109,6 +111,10 @@
    public AjaxResult add(@RequestBody ServiceEthicalreviewinitiate serviceEthicalreviewinitiate) {
       boolean result=serviceEthicalreviewinitiateService.save(serviceEthicalreviewinitiate);
        if (result) {
            for(ServiceEthicalreviewopinions row: serviceEthicalreviewinitiate.getEthicalreviewopinionsList()){
                row.setNitiateId(serviceEthicalreviewinitiate.getId());
                serviceEthicalreviewopinionsService.save(row);
            }
            return AjaxResult.success(serviceEthicalreviewinitiate.getId());
        } else
            return AjaxResult.error();
@@ -140,4 +146,26 @@
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(serviceEthicalreviewinitiateService.removeByIds(Arrays.asList(ids)));
    }
    /**
     * 修改伦理审查发起
     */
    @ApiOperation("伦理审查终止")
    @GetMapping("/stop")
    public AjaxResult stop(long id) {
        QueryWrapper<ServiceEthicalreviewinitiate> ethicalreviewinitiateQueryWrapper=new QueryWrapper<>();
        ethicalreviewinitiateQueryWrapper.eq("id",id);
        ServiceEthicalreviewinitiate serviceEthicalreviewinitiate =new ServiceEthicalreviewinitiate();
        serviceEthicalreviewinitiate.setStatus("2");
        boolean result=serviceEthicalreviewinitiateService.update(serviceEthicalreviewinitiate,ethicalreviewinitiateQueryWrapper);
        if (result) {
            QueryWrapper<ServiceEthicalreviewopinions> ethicalreviewopinionsWrapper=new QueryWrapper<>();
            ethicalreviewopinionsWrapper.eq("nitiate_id",id);
            ServiceEthicalreviewopinions serviceEthicalreviewopinions =new ServiceEthicalreviewopinions();
            serviceEthicalreviewopinions.setReceiveStatus("5");
            serviceEthicalreviewopinionsService.update(serviceEthicalreviewopinions,ethicalreviewopinionsWrapper);
            return AjaxResult.success();
        } else
            return AjaxResult.error();
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewopinionsController.java
@@ -13,9 +13,13 @@
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.domain.ServiceDonateorganBase;
import com.ruoyi.project.domain.ServiceEthicalreviewinitiate;
import com.ruoyi.project.domain.ServiceEthicalreviewopinions;
import com.ruoyi.project.domain.vo.EthicalReviewVO;
import com.ruoyi.project.domain.vo.EthicalreviewopinionsTotalVO;
import com.ruoyi.project.service.IServiceEthicalreviewinitiateService;
import com.ruoyi.project.service.IServiceEthicalreviewopinionsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@@ -34,20 +38,27 @@
 */
@RestController
@RequestMapping("/project/ethicalreviewopinions")
@Api(description = "伦理审查专家意见",tags={"伦理审查专家意见"})
public class ServiceEthicalreviewopinionsController extends BaseController {
    @Autowired
    private IServiceEthicalreviewopinionsService serviceEthicalreviewopinionsService;
    @Autowired
    private IServiceEthicalreviewinitiateService serviceEthicalreviewinitiateService;
    @ApiOperation("查询伦理审查专家意见列表")
    /**
     * 查询伦理审查专家意见列表
     */
    //// @PreAuthorize("@ss.hasPermi('project:ethicalreviewopinions:list')")
    @GetMapping("/list")
    public Map<String, Object> list(ServiceEthicalreviewopinions serviceEthicalreviewopinions) {
        serviceEthicalreviewopinionsService.updateTimeOut();
        Page<ServiceEthicalreviewopinions> list = serviceEthicalreviewopinionsService.queryListByPage(serviceEthicalreviewopinions);
        return getDataTable(list.getRecords(), (int) list.getTotal());
    }
    @ApiOperation("查询捐献信息伦理审查专家意见列表")
    @GetMapping("/listnew")
    public TableDataInfo listnew(EthicalReviewVO ethicalReviewVO) {
        startPage();
@@ -68,6 +79,7 @@
//        return util.exportExcel(list, "伦理审查专家意见数据");
//    }
    @ApiOperation("获取伦理审查专家意见详细信息")
    /**
     * 获取伦理审查专家意见详细信息
     */
@@ -77,17 +89,19 @@
        return AjaxResult.success(serviceEthicalreviewopinionsService.getById(id));
    }
    @ApiOperation("新增伦理审查专家意见")
    /**
     * 新增伦理审查专家意见
     */
    //// @PreAuthorize("@ss.hasPermi('project:ethicalreviewopinions:add')")
    @Log(title = "伦理审查专家意见", businessType = BusinessType.INSERT)
    @Log(title = "新增伦理审查专家意见", businessType = BusinessType.INSERT)
    @PostMapping("/add")
    public AjaxResult add(@RequestBody ServiceEthicalreviewopinions serviceEthicalreviewopinions) {
        boolean save = serviceEthicalreviewopinionsService.save(serviceEthicalreviewopinions);
        return AjaxResult.success(serviceEthicalreviewopinions);
    }
    @ApiOperation("伦理审查专家意见")
    /**
     * 修改伦理审查专家意见
     */
@@ -96,9 +110,18 @@
    @PostMapping("/edit")
//    @RepeatSubmit
    public AjaxResult edit(@RequestBody ServiceEthicalreviewopinions serviceEthicalreviewopinions) {
        return toAjax(serviceEthicalreviewopinionsService.updateById(serviceEthicalreviewopinions));
        boolean res=serviceEthicalreviewopinionsService.updateById(serviceEthicalreviewopinions);
        if(res&&serviceEthicalreviewopinions.getExpertType().equals("1")){
            QueryWrapper<ServiceEthicalreviewinitiate> ethicalreviewinitiateQueryWrapper=new QueryWrapper<>();
            ethicalreviewinitiateQueryWrapper.eq("id",serviceEthicalreviewopinions.getNitiateId());
            ServiceEthicalreviewinitiate serviceEthicalreviewinitiate =new ServiceEthicalreviewinitiate();
            serviceEthicalreviewinitiate.setStatus("2");
            res=serviceEthicalreviewinitiateService.update(serviceEthicalreviewinitiate,ethicalreviewinitiateQueryWrapper);
        }
        return toAjax(res);
    }
    @ApiOperation("删除伦理审查专家意见")
    /**
     * 删除伦理审查专家意见
     */
@@ -114,9 +137,9 @@
     */
    @ApiOperation("获取伦理审查专家数量")
    @GetMapping(value = "/expertCount")
    public AjaxResult count(Integer InfoID) {
    public AjaxResult count(Integer nitiateId) {
        QueryWrapper<ServiceEthicalreviewopinions> ethicalreviewopinionsWrapper=new QueryWrapper<>();
        ethicalreviewopinionsWrapper.eq("InfoID",InfoID);
        ethicalreviewopinionsWrapper.eq("nitiate_Id",nitiateId);
        long count =serviceEthicalreviewopinionsService.count(ethicalreviewopinionsWrapper);
        return AjaxResult.success(count);
    }
@@ -124,13 +147,13 @@
    /**
     * 获取伦理审查专家接收
     */
    @ApiOperation("获取伦理审查专家接收")
    @ApiOperation("获取伦理审查专家状态")
    @GetMapping("/receiveStatus")
    public AjaxResult receiveStatus(Integer InfoID,String DonorNo) {
    public AjaxResult receiveStatus(Integer nitiateId,String expertNo,String receiveStatus) {
        QueryWrapper<ServiceEthicalreviewopinions> ethicalreviewopinionsWrapper=new QueryWrapper<>();
        ethicalreviewopinionsWrapper.eq("InfoID",InfoID).eq("DonorNo",DonorNo);
        ethicalreviewopinionsWrapper.eq("nitiate_Id",nitiateId).eq("expert_no",expertNo);
        ServiceEthicalreviewopinions serviceEthicalreviewopinions =new ServiceEthicalreviewopinions();
        serviceEthicalreviewopinions.setReceiveStatus("1");
        serviceEthicalreviewopinions.setReceiveStatus(receiveStatus);
        return toAjax(serviceEthicalreviewopinionsService.update(serviceEthicalreviewopinions,ethicalreviewopinionsWrapper));
    }
@@ -139,8 +162,8 @@
     */
    @ApiOperation("专家统计详情")
    @GetMapping(value = "/expertTotal")
    public AjaxResult expertTotal(String DonorNo) {
        return AjaxResult.success(serviceEthicalreviewopinionsService.expertTotal(DonorNo));
    public List<EthicalreviewopinionsTotalVO> expertTotal(String expertNo) {
        return serviceEthicalreviewopinionsService.expertTotal(expertNo);
    }
}
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceEthicalreviewinitiate.java
@@ -137,5 +137,9 @@
    @ApiModelProperty("签名")
    @Excel(name = "签名")
    private String sigin;
    @ApiModelProperty("签名")
    @TableField(exist = false)
    private List<ServiceEthicalreviewopinions> ethicalreviewopinionsList;
}
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceEthicalreviewopinions.java
@@ -31,6 +31,13 @@
    private Long id;
    /**
     * 伦理审查id
     */
    @ApiModelProperty("伦理审查id")
    @Excel(name = "伦理审查id")
    private Long nitiateId;
    /**
     * 关联service_donatebaseinfo表的ID
     */
    @ApiModelProperty("关联service_donatebaseinfo表的ID")
@@ -86,6 +93,10 @@
    @Excel(name = "专家结论  见字典 sys_0_1 ")
    private Long expertconclusion;
    @ApiModelProperty("专家编号")
    @Excel(name = "专家编号")
    private String expertNo;
    /**
     * 专家名字
     */
@@ -125,9 +136,27 @@
    /**
     * 接收状态
     */
    @ApiModelProperty("接收状态")
    @Excel(name = "接收状态")
    @ApiModelProperty("接收状态0待接收1未接收2已接收3超时4中止5完成")
    @Excel(name = "接收状态0待接收1未接收2已接收3超时4中止5完成")
    private String receiveStatus;
    /** 发起时间 */
    @ApiModelProperty("发起时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "发起时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;
    /** 结束时间 */
    @ApiModelProperty("结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    /**
     * 接收状态
     */
    @ApiModelProperty("专家类型0普通1专家")
    @Excel(name = "专家类型0普通1专家")
    private String expertType;
}
ruoyi-project/src/main/java/com/ruoyi/project/domain/vo/EthicalReviewVO.java
@@ -571,6 +571,9 @@
    @Excel(name = "专家结论  见字典 sys_0_1 ")
    private Long expertconclusion;
    @ApiModelProperty("专家编号")
    @Excel(name = "专家编号")
    private String expertNo;
    /**
     * 专家名字
@@ -619,7 +622,26 @@
    /**
     * 接收状态
     */
    @ApiModelProperty("接收状态")
    @Excel(name = "接收状态")
    @ApiModelProperty("接收状态0待接收1未接收2已接收3超时4中止5完成")
    @Excel(name = "接收状态0待接收1未接收2已接收3超时4中止5完成")
    private String receiveStatus;
    /** 发起时间 */
    @ApiModelProperty("发起时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "发起时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;
    /** 结束时间 */
    @ApiModelProperty("结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    @ApiModelProperty("伦理审查id")
    @Excel(name = "伦理审查id")
    private String nitiateId;
}
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceEthicalreviewopinionsMapper.java
@@ -31,4 +31,6 @@
    Integer countNumber(TimeVO timeVO);
    List<EthicalreviewopinionsTotalVO> expertTotal(String DonorNo);
    Integer updateTimeOut();
}
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceEthicalreviewopinionsService.java
@@ -29,4 +29,6 @@
    List<EthicalReviewVO> selectVOList(EthicalReviewVO ethicalReviewVO);
    List<EthicalreviewopinionsTotalVO> expertTotal(String DonorNo);
    Integer updateTimeOut();
}
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceEthicalreviewopinionsServiceImpl.java
@@ -149,7 +149,12 @@
        if (StringUtils.isNotEmpty(serviceEthicalreviewopinions.getOrganType())) {
            wrappers.eq(ServiceEthicalreviewopinions::getOrganType, serviceEthicalreviewopinions.getOrganType());
        }
        if (ObjectUtils.isNotEmpty(serviceEthicalreviewopinions.getNitiateId())) {
            wrappers.eq(ServiceEthicalreviewopinions::getNitiateId, serviceEthicalreviewopinions.getNitiateId());
        }
        if (ObjectUtils.isNotEmpty(serviceEthicalreviewopinions.getExpertNo())) {
            wrappers.eq(ServiceEthicalreviewopinions::getExpertNo, serviceEthicalreviewopinions.getExpertNo());
        }
        int currentPage = (serviceEthicalreviewopinions.getPageNum() == null || serviceEthicalreviewopinions.getPageNum() < 1) ? 1 : serviceEthicalreviewopinions.getPageNum();
        int size = (serviceEthicalreviewopinions.getPageSize() == null || serviceEthicalreviewopinions.getPageSize() < 1) ? 10 : serviceEthicalreviewopinions.getPageSize();
        Page<ServiceEthicalreviewopinions> page = new Page<>(currentPage, size);
@@ -162,17 +167,7 @@
    @Override
    public List<EthicalReviewVO> selectVOList(EthicalReviewVO ethicalReviewVO) {
        SysUser user = SecurityUtils.getLoginUser().getUser();
        List<SysRole> l = user.getRoles();
        Boolean b = false;
        for (SysRole r : l) {
            if (r.getRoleId().longValue() == 3) {
                b = true;
            }
        }
        if (b) {
            ethicalReviewVO.setReporterno(user.getUserName());
        }
        List<EthicalReviewVO> ethicalReviewVOS = serviceEthicalreviewopinionsMapper.selectVOList(ethicalReviewVO);
        for (EthicalReviewVO ethicalReviewVO1 : ethicalReviewVOS) {
@@ -203,9 +198,13 @@
        return ethicalReviewVOS;
    }
    public List<EthicalreviewopinionsTotalVO> expertTotal(String DonorNo) {
    public List<EthicalreviewopinionsTotalVO> expertTotal(String expertNo) {
        return serviceEthicalreviewopinionsMapper.expertTotal(DonorNo);
        return serviceEthicalreviewopinionsMapper.expertTotal(expertNo);
    }
    public Integer updateTimeOut() {
        return serviceEthicalreviewopinionsMapper.updateTimeOut();
    }
}
ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewopinionsMapper.xml
@@ -135,13 +135,12 @@
        service_ethicalreviewopinions.dept_name as dept_name,
        service_ethicalreviewopinions.dept_code as dept_code,
        service_ethicalreviewopinions.organ_type as organ_type,
        service_ethicalreviewopinions.ConclusionOrder as conclusionorder
        FROM
        service_donatebaseinfo
        LEFT JOIN
        service_ethicalreviewopinions
        ON
        service_donatebaseinfo.ID = service_ethicalreviewopinions.InfoID
        service_ethicalreviewopinions.ConclusionOrder as conclusionorder,
        service_ethicalreviewopinions.nitiate_id as nitiateId,
        service_ethicalreviewopinions.expert_no as expertNo
        FROM   service_donatebaseinfo
        LEFT JOIN  service_ethicalreviewopinions
        ON service_donatebaseinfo.ID = service_ethicalreviewopinions.InfoID
        LEFT JOIN base_organization ON
        base_organization.OrganizationID = service_donatebaseinfo.TreatmentHospitalNo
@@ -172,6 +171,8 @@
            <if test="city != null and city != ''">and `base_organization`.`City` = #{city}</if>
            <if test="fcid != null ">and `service_ethicalreviewopinions`.`ID` = #{fcid}</if>
            <if test="workflow != null ">and `service_donatebaseinfo`.`workflow` = #{workflow}</if>
            <if test="nitiateId != null ">and `service_ethicalreviewopinions`.`nitiate_id` = #{nitiateId}</if>
            <if test="expertNo != null ">and `service_ethicalreviewopinions`.`expert_no` = #{expertNo}</if>
        </where>
        order by `service_ethicalreviewopinions`.`ConclusionTime` desc
@@ -196,10 +197,15 @@
        FROM service_ethicalreviewopinions
        <where>
            <if test="DonorNo != null ">DonorNo = #{DonorNo}</if>
            <if test="expertNo != null ">expert_no = #{expertNo}</if>
        </where>
        GROUP BY receive_status,ExpertOpinion,ConclusionAnnex
    </select>
    <update id="updateTimeOut" >
        UPDATE service_ethicalreviewopinions SET receive_status=0
        WHERE end_time IS NOT NULL AND end_time &lt;= NOW()
    </update>
</mapper>