sinake
7 天以前 6be76e5857faa20eca68248187bd181aa50b029b
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceEthicalreviewopinionsController.java
@@ -1,19 +1,30 @@
package com.ruoyi.web.controller.project;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.annotation.NotRepeatCommit;
import com.ruoyi.common.annotation.RepeatSubmit;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.Result;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
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.EthicalreviewopinionsStateTotalVO;
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;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -29,20 +40,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();
@@ -63,6 +81,7 @@
//        return util.exportExcel(list, "伦理审查专家意见数据");
//    }
    @ApiOperation("获取伦理审查专家意见详细信息")
    /**
     * 获取伦理审查专家意见详细信息
     */
@@ -72,17 +91,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("修改伦理审查专家意见")
    /**
     * 修改伦理审查专家意见
     */
@@ -91,9 +112,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("主任委员")&&serviceEthicalreviewopinions.getReceiveStatus().equals("5")){
            QueryWrapper<ServiceEthicalreviewinitiate> ethicalreviewinitiateQueryWrapper=new QueryWrapper<>();
            ethicalreviewinitiateQueryWrapper.eq("id",serviceEthicalreviewopinions.getNitiateId());
            ServiceEthicalreviewinitiate serviceEthicalreviewinitiate =new ServiceEthicalreviewinitiate();
            serviceEthicalreviewinitiate.setStatus("3");
            res=serviceEthicalreviewinitiateService.update(serviceEthicalreviewinitiate,ethicalreviewinitiateQueryWrapper);
        }
        return toAjax(res);
    }
    @ApiOperation("删除伦理审查专家意见")
    /**
     * 删除伦理审查专家意见
     */
@@ -103,4 +133,44 @@
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(serviceEthicalreviewopinionsService.removeByIds(Arrays.asList(ids)));
    }
    /**
     * 获取伦理审查专家数量
     */
    @ApiOperation("获取伦理审查专家数量")
    @GetMapping(value = "/expertCount")
    public AjaxResult count(Integer nitiateId) {
        QueryWrapper<ServiceEthicalreviewopinions> ethicalreviewopinionsWrapper=new QueryWrapper<>();
        ethicalreviewopinionsWrapper.eq("nitiate_Id",nitiateId);
        long count =serviceEthicalreviewopinionsService.count(ethicalreviewopinionsWrapper);
        return AjaxResult.success(count);
    }
    /**
     * 获取伦理审查专家接收
     */
    @ApiOperation("获取伦理审查专家状态")
    @GetMapping("/receiveStatus")
    public AjaxResult receiveStatus(Integer nitiateId,String expertNo,String receiveStatus) {
        QueryWrapper<ServiceEthicalreviewopinions> ethicalreviewopinionsWrapper=new QueryWrapper<>();
        ethicalreviewopinionsWrapper.eq("nitiate_Id",nitiateId).eq("expert_no",expertNo);
        ServiceEthicalreviewopinions serviceEthicalreviewopinions =new ServiceEthicalreviewopinions();
        serviceEthicalreviewopinions.setReceiveStatus(receiveStatus);
        return toAjax(serviceEthicalreviewopinionsService.update(serviceEthicalreviewopinions,ethicalreviewopinionsWrapper));
    }
    @ApiOperation("专家统计详情")
    @GetMapping(value = "/expertTotal")
    public Result<List<EthicalreviewopinionsTotalVO>> expertTotal(String expertNo) {
        return Result.success(serviceEthicalreviewopinionsService.expertTotal(expertNo)) ;
    }
    @ApiOperation("专家状态统计")
    @GetMapping(value = "/stateTotal")
    public Result<List<EthicalreviewopinionsStateTotalVO>> stateTotal(String expertNo) {
        return Result.success(serviceEthicalreviewopinionsService.stateTotal(expertNo));
    }
}