sinake
3 天以前 c24da66e909648b614819d2c36d84a43fd604019
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportController.java
@@ -5,6 +5,7 @@
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.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.base.BaseException;
@@ -12,20 +13,17 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.project.common.IdGeneratorUtils;
import com.ruoyi.project.domain.ServiceDonatebaseinfoReport;
import com.ruoyi.project.domain.ServiceDonatebaseinfoReportFile;
import com.ruoyi.project.domain.ServiceTransport;
import com.ruoyi.project.domain.VUserOrg;
import com.ruoyi.project.service.IServiceDonatebaseinfoReportFileService;
import com.ruoyi.project.service.IServiceDonatebaseinfoReportService;
import com.ruoyi.project.service.IServiceTransportService;
import com.ruoyi.project.service.IVUserOrgService;
import com.ruoyi.project.domain.*;
import com.ruoyi.project.service.*;
import com.ruoyi.system.domain.SysConfig;
import com.ruoyi.system.service.ISysConfigService;
import com.ruoyi.system.service.ISysUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
@@ -52,6 +50,10 @@
    private IVUserOrgService vUserOrgService;
    @Autowired
    private IServiceTransportService serviceTransport;
    @Autowired
    private IGiLinkService linkService;
    @Autowired
    private ISysUserService userService;
    /**
@@ -60,6 +62,11 @@
    @ApiOperation("查询捐献上报基础列表")
    @PostMapping("/list")
    public Map<String, Object> list(@RequestBody ServiceDonatebaseinfoReport serviceDonatebaseinfoReport) {
        Long userId= getUserId();
        SysUser user = userService.selectUserById(userId);
        if(user!=null&&user.getUserType()!=null&&!user.getUserType().equals("00")){
            serviceDonatebaseinfoReport.setNotAdminId(user.getUserName());
        }
        Page<ServiceDonatebaseinfoReport> serviceDonatebaseinfoReportPage = serviceDonatebaseinfoReportService.queryList(serviceDonatebaseinfoReport);
        return getDataTable(serviceDonatebaseinfoReportPage.getRecords(), (int) serviceDonatebaseinfoReportPage.getTotal());
    }
@@ -70,6 +77,12 @@
    @ApiOperation("获取各类型的总数")
    @PostMapping("/getTotal")
    public Map<String, Object> getTotal(@RequestBody ServiceDonatebaseinfoReport serviceDonatebaseinfoReport) {
       Long userId= getUserId();
        SysUser user = userService.selectUserById(userId);
        if(user!=null&&user.getUserType()!=null&&!user.getUserType().equals("00")){
            serviceDonatebaseinfoReport.setNotAdminId(user.getUserName());
        }
        //去配置文件中,获取上报类型
        SysConfig config = new SysConfig();
        config.setConfigKey("sys.report.type");
@@ -125,9 +138,10 @@
    @RepeatSubmit
    public AjaxResult add(@RequestBody ServiceDonatebaseinfoReport serviceDonatebaseinfoReport) {
        //生成案例上报ID
        String caseNo = String.valueOf(IdGeneratorUtils.nextId());
        serviceDonatebaseinfoReport.setCaseNo(caseNo);
        if(ObjectUtils.isEmpty(serviceDonatebaseinfoReport.getCaseNo())) {
            String caseNo = String.valueOf(IdGeneratorUtils.nextId());
            serviceDonatebaseinfoReport.setCaseNo(caseNo);
        }
        //获取协调员信息
        LoginUser loginUser = SecurityUtils.getLoginUser();
        String userName = loginUser.getUser().getUserName();
@@ -141,8 +155,11 @@
        boolean save = serviceDonatebaseinfoReportService.save(serviceDonatebaseinfoReport);
        //将生成的文件地址存储到数据库中
        if (save)
            serviceDonatebaseinfoReportFileService.addList(serviceDonatebaseinfoReport.getAnnexfilesList(), serviceDonatebaseinfoReport.getCaseNo(), getNickName(), serviceDonatebaseinfoReport.getId());
        if (save) {
            linkService.SendReport(serviceDonatebaseinfoReport.getId(),serviceDonatebaseinfoReport.getCoordinatorNo(),serviceDonatebaseinfoReport.getToHospital());
            boolean res= serviceDonatebaseinfoReportFileService.addList(serviceDonatebaseinfoReport.getAnnexfilesList(), serviceDonatebaseinfoReport.getCaseNo(), getNickName(), serviceDonatebaseinfoReport.getId());
        }
        return toAjax(save);
    }
@@ -160,7 +177,7 @@
        boolean b = serviceDonatebaseinfoReportService.updateById(serviceDonatebaseinfoReport);
        if (b) {
            serviceDonatebaseinfoReportFileService.updateList(serviceDonatebaseinfoReport.getAnnexfilesList(), serviceDonatebaseinfoReport.getId(), serviceDonatebaseinfoReport.getCaseNo(), getNickName());
            if (serviceDonatebaseinfoReport.getReportStatus().equals("3")) {
            if (serviceDonatebaseinfoReport.getReportStatus().equals("3")&&serviceDonatebaseinfoReport.getIsDonate().equals(1)) {
                //如果同意上报,那就可以建档了(往 ServiceDonatebaseinfo新增)
                serviceDonatebaseinfoReportService.createDocument(serviceDonatebaseinfoReport);
            }
@@ -175,9 +192,22 @@
    @ApiOperation("删除捐献上报基础")
    @GetMapping("/remove/{id}")
    public AjaxResult remove(@PathVariable Long id) {
        ServiceDonatebaseinfoReport serviceDonatebaseinfoReport = new ServiceDonatebaseinfoReport();
        serviceDonatebaseinfoReport.setId(id);
        serviceDonatebaseinfoReport.setDelFlag(1);
        return toAjax(serviceDonatebaseinfoReportService.updateById(serviceDonatebaseinfoReport));
        return toAjax(serviceDonatebaseinfoReportService.removeById(id));
    }
    /**
     * 修改捐献上报基础
     */
    @ApiOperation("上报")
    @Log(title = "上报", businessType = BusinessType.UPDATE)
    @PostMapping("/report")
    @RepeatSubmit
    public AjaxResult report(@RequestBody ServiceDonatebaseinfoReport serviceDonatebaseinfoReport) {
        if (StringUtils.isEmpty(serviceDonatebaseinfoReport.getCaseNo())) {
            throw new BaseException("案例编号为空,请检查后再修改");
        }
        boolean b = serviceDonatebaseinfoReportService.updateById(serviceDonatebaseinfoReport);
        return toAjax(b);
    }
}