package com.ruoyi.web.controller.project; import java.io.*; import java.text.SimpleDateFormat; import java.util.*; import com.ruoyi.common.annotation.NotRepeatCommit; import com.ruoyi.common.config.RuoYiConfig; import com.ruoyi.common.enums.OrganEnum; import com.ruoyi.common.exception.base.BaseException; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.bean.DtoConversionUtils; import com.ruoyi.project.domain.ServiceDonatebaseinfo; import com.ruoyi.project.domain.ServiceDonateorgan; import com.ruoyi.project.domain.vo.DonationWitnessVO; import com.ruoyi.project.domain.vo.TimeVO; import com.ruoyi.project.service.IBaseOnlyvalueService; import com.ruoyi.project.service.IServiceDonatebaseinfoService; import com.ruoyi.project.service.IServiceDonateorganService; import com.ruoyi.web.controller.common.OnlyValueCommon; import freemarker.template.Configuration; import freemarker.template.Template; import freemarker.template.TemplateException; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.annotation.RepeatSubmit; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.project.domain.ServiceDonationwitness; import com.ruoyi.project.service.IServiceDonationwitnessService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; /** * 捐献见证Controller * * @author ruoyi * @date 2021-11-17 */ @Slf4j @Api("捐献见证管理") @RestController @RequestMapping("/project/donationwitness") public class ServiceDonationwitnessController extends BaseController { @Autowired private IServiceDonationwitnessService serviceDonationwitnessService; @Autowired private IBaseOnlyvalueService baseOnlyvalueService; @Autowired private IServiceDonateorganService serviceDonateorganService; @Autowired private IServiceDonatebaseinfoService serviceDonatebaseinfoService; @Autowired private OnlyValueCommon onlyValueCommon; private static Configuration configuration = null; public ServiceDonationwitnessController() { configuration = new Configuration(); configuration.setDefaultEncoding("utf-8"); } /** * 查询捐献见证列表 */ @ApiOperation("获取捐献见证列表") //@PreAuthorize("@ss.hasPermi('project:donationwitness:list')") @GetMapping("/list") public TableDataInfo list(ServiceDonationwitness serviceDonationwitness) { startPage(); List list = serviceDonationwitnessService.queryList(serviceDonationwitness); return getDataTable(list); } @ApiOperation("获取捐献见证列表-新") @GetMapping("/listnew") public TableDataInfo listnew(DonationWitnessVO donationWitnessVO) { startPage(); List list = serviceDonationwitnessService.selectVOList(donationWitnessVO); return getDataTable(list); } /** * 导出捐献见证列表 */ @ApiOperation("导出捐献见证列表") //@PreAuthorize("@ss.hasPermi('project:donationwitness:export')") @Log(title = "捐献见证", businessType = BusinessType.EXPORT) @GetMapping("/export") public AjaxResult export(ServiceDonationwitness serviceDonationwitness) { List list = serviceDonationwitnessService.queryList(serviceDonationwitness); ExcelUtil util = new ExcelUtil(ServiceDonationwitness.class); return util.exportExcel(list, "捐献见证数据"); } /** * 获取捐献见证详细信息 */ @ApiOperation("通过id获取见证信息") //@PreAuthorize("@ss.hasPermi('project:donationwitness:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { return AjaxResult.success(serviceDonationwitnessService.getById(id)); } /** * 新增捐献见证 */ @ApiOperation("新增捐献见证") //@PreAuthorize("@ss.hasPermi('project:donationwitness:add')") @Log(title = "捐献见证", businessType = BusinessType.INSERT) @PostMapping("/add") @RepeatSubmit public AjaxResult add(@RequestBody ServiceDonationwitness serviceDonationwitness) { boolean save = serviceDonationwitnessService.save(serviceDonationwitness); if (save) { //生成“捐献者编号” ServiceDonatebaseinfo serviceDonatebaseinfo = serviceDonatebaseinfoService.getById(serviceDonationwitness.getInfoid()); log.info("serviceDonatebaseinfo的信息为{}", serviceDonatebaseinfo); String donorno = serviceDonatebaseinfoService.getDonateNumber(serviceDonatebaseinfo); log.info("生成的捐献者编号为:{}", donorno); serviceDonatebaseinfo.setDonorno(donorno); serviceDonatebaseinfoService.updateById(serviceDonatebaseinfo); } return AjaxResult.success(serviceDonationwitness); } /** * 修改捐献见证 */ @ApiOperation("修改捐献见证") //@PreAuthorize("@ss.hasPermi('project:donationwitness:edit')") @Log(title = "捐献见证", businessType = BusinessType.UPDATE) @PostMapping("/edit") @RepeatSubmit public AjaxResult edit(@RequestBody ServiceDonationwitness serviceDonationwitness) { int last = -1; if (StringUtils.isNotEmpty(serviceDonationwitness.getDonorno())) { last = serviceDonationwitness.getDonorno().lastIndexOf("*"); } //捐献者编号最后一位是 * ,才可以往唯一里表加数据 if (last == serviceDonationwitness.getDonorno().length()) { onlyValueCommon.addOnlyValue("donationwitness"); } return toAjax(serviceDonationwitnessService.updateById(serviceDonationwitness)); } /** * 删除捐献见证 */ @ApiOperation("删除捐献见证") //@PreAuthorize("@ss.hasPermi('project:donationwitness:remove')") @Log(title = "捐献见证", businessType = BusinessType.DELETE) @GetMapping("/remove/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { return toAjax(serviceDonationwitnessService.removeByIds(Arrays.asList(ids))); } @GetMapping(value = "/getByInfoId/{infoid}") public AjaxResult getByInfoId(@PathVariable("infoid") Long infoid) { return AjaxResult.success(serviceDonationwitnessService.getByInfoId(infoid)); } /** * 下载人体器官捐献获取见证登记表 */ @ApiOperation("通过donorno下载人体器官捐献获取见证登记表") @GetMapping(value = "/download/{id}") public Map downloadInfo(@PathVariable Long id) throws IOException { Map dataMap = new HashMap(); getData(dataMap, id); String filePath = getClass().getResource("/template/").getPath(); System.out.println(filePath); //设置模本装置方法和路径,FreeMarker支持多种模板装载方法。可以重servlet,classpath,数据库教程装载, configuration.setDirectoryForTemplateLoading(new File(filePath)); Template t = null; try { //捐献表.ftl为要装载的模板 t = configuration.getTemplate("人体器官捐献获取见证登记表.ftl"); } catch (IOException e) { e.printStackTrace(); } String newTime = String.valueOf(Calendar.getInstance().getTimeInMillis()); String name = "人体器官捐献获取见证登记表_" + dataMap.get("XM") + "_" + newTime; //输出文档路径及名称 File outFile = new File(RuoYiConfig.getProfile() + "/download/wordtemplate/" + name + ".doc"); Writer out = null; try { out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFile), "utf-8")); } catch (FileNotFoundException e1) { e1.printStackTrace(); } try { t.process(dataMap, out); } catch (TemplateException e) { e.printStackTrace(); } Map map = new HashMap<>(); map.put("downloadUrl", "/profile/download/wordtemplate/" + name + ".doc"); map.put("downloadName", name + ".doc"); return map; } /** * 注意dataMap里存放的数据Key值要与模板中的参数相对应 * * @param dataMap */ private void getData(Map dataMap, Long id) { DonationWitnessVO donationWitnessVO = new DonationWitnessVO(); List list = serviceDonationwitnessService.selectVOList(donationWitnessVO); DonationWitnessVO donationWitness = new DonationWitnessVO(); for (DonationWitnessVO v : list) { if (v.getDwid() != null && v.getDwid().longValue() == id) { donationWitness = v; } } SimpleDateFormat sformat = new SimpleDateFormat("yyyy-MM-dd HH:mm"); dataMap.put("JXBH", donationWitness.getDonorno()); dataMap.put("XM", donationWitness.getName()); dataMap.put("JXYY", donationWitness.getTreatmenthospitalname() == null ? "" : donationWitness.getTreatmenthospitalname()); dataMap.put("SWPD1", donationWitness.getDeathjudgedocto() == null ? "" : donationWitness.getDeathjudgedocto()); dataMap.put("SWPD2", donationWitness.getDeathjudgedoctt() == null ? "" : donationWitness.getDeathjudgedoctt()); dataMap.put("SWYY", donationWitness.getDeathreason() == null ? "" : donationWitness.getDeathreason()); dataMap.put("SWSJ", donationWitness.getDeathtime() == null ? "" : sformat.format(donationWitness.getDeathtime())); if (donationWitness.getDwdonationcategory().contains("DBD")) { dataMap.put("ZGYL", (char) 8730); } else { dataMap.put("ZGYL", "□"); } if (donationWitness.getDwdonationcategory().contains("DCD")) { dataMap.put("ZGEL", (char) 8730); } else { dataMap.put("ZGEL", "□"); } if (donationWitness.getDwdonationcategory().contains("DBCD")) { dataMap.put("ZGSL", (char) 8730); } else { dataMap.put("ZGSL", "□"); } if (donationWitness.getOrgandonation().contains("C22")) { dataMap.put("GZ", (char) 8730); } else { dataMap.put("GZ", "□"); } if (donationWitness.getOrgandonation().contains("C64L")) { dataMap.put("ZS", (char) 8730); } else { dataMap.put("ZS", "□"); } if (donationWitness.getOrgandonation().contains("C64R")) { dataMap.put("YS", (char) 8730); } else { dataMap.put("YS", "□"); } if (donationWitness.getOrgandonation().contains("C38")) { dataMap.put("XZ", (char) 8730); } else { dataMap.put("XZ", "□"); } if (donationWitness.getOrgandonation().contains("C34")) { dataMap.put("FZ", (char) 8730); } else { dataMap.put("FZ", "□"); } if (donationWitness.getOrgandonation().contains("C25")) { dataMap.put("YX", (char) 8730); } else { dataMap.put("YX", "□"); } if (donationWitness.getOrgandonation().contains("C17")) { dataMap.put("XC", (char) 8730); } else { dataMap.put("XC", "□"); } if (donationWitness.getOrgandonation().contains("C69L")) { dataMap.put("ZYZZ", (char) 8730); } else { dataMap.put("ZYZZ", "□"); } if (donationWitness.getOrgandonation().contains("C69R")) { dataMap.put("YYZZ", (char) 8730); } else { dataMap.put("YYZZ", "□"); } String hqzz = serviceDonatebaseinfoService.gethqzz(donationWitness.getInfoid()); dataMap.put("HQZZ", hqzz == null ? "" : hqzz); dataMap.put("KSSJ", donationWitness.getOperationbegtime() == null ? "" : sformat.format(donationWitness.getOperationbegtime())); dataMap.put("JSSJ", donationWitness.getOperationendtime() == null ? "" : sformat.format(donationWitness.getOperationendtime())); dataMap.put("FZDMCG", donationWitness.getAbdominalaortacannulatime() == null ? "" : sformat.format(donationWitness.getAbdominalaortacannulatime())); dataMap.put("FZDMGZ", donationWitness.getAbdominalaortaperfusiontime() == null ? "" : sformat.format(donationWitness.getAbdominalaortaperfusiontime())); dataMap.put("MJMCG", donationWitness.getPortalveincannulatime() == null ? "" : sformat.format(donationWitness.getPortalveincannulatime())); dataMap.put("MJMGZ", donationWitness.getPortalveinperfusiontime() == null ? "" : sformat.format(donationWitness.getPortalveinperfusiontime())); dataMap.put("FDMCG", donationWitness.getPulmonaryarterycannulatime() == null ? "" : sformat.format(donationWitness.getPulmonaryarterycannulatime())); dataMap.put("FDMGZ", donationWitness.getPulmonaryarteryperfusiontime() == null ? "" : sformat.format(donationWitness.getPulmonaryarteryperfusiontime())); dataMap.put("ZDMCG", donationWitness.getAortacannulatime() == null ? "" : sformat.format(donationWitness.getAortacannulatime())); dataMap.put("ZDMGZ", donationWitness.getAortaperfusiontime() == null ? "" : sformat.format(donationWitness.getAortaperfusiontime())); if (donationWitness.getIsrestoreremains() != null && donationWitness.getIsrestoreremains() == 0) { dataMap.put("HFYT", "□"); dataMap.put("BHFYT", (char) 8730); } else if (donationWitness.getIsrestoreremains() != null && donationWitness.getIsrestoreremains() == 1) { dataMap.put("HFYT", (char) 8730); dataMap.put("BHFYT", "□"); } if (donationWitness.getIsspendremember() != null && donationWitness.getIsspendremember() == 0) { dataMap.put("MA", "□"); dataMap.put("BMA", (char) 8730); } else if (donationWitness.getIsspendremember() != null && donationWitness.getIsspendremember() == 1) { dataMap.put("MA", (char) 8730); dataMap.put("BMA", "□"); } ServiceDonateorgan serviceDonateorgan = new ServiceDonateorgan(); serviceDonateorgan.setInfoid(donationWitness.getInfoid()); List donateorganList = serviceDonateorganService.queryList(serviceDonateorgan); Boolean xz = false; Boolean qg = false; Boolean zg = false; Boolean yg = false; Boolean zs = false; Boolean ys = false; Boolean qf = false; Boolean zf = false; Boolean yf = false; Boolean yx = false; Boolean xc = false; Boolean zyjm = false; Boolean yyjm = false; if (donateorganList.size() > 0) { for (int i = 0; i < donateorganList.size(); i++) { if (donateorganList.get(i).getOrganno().equals(OrganEnum.XZ.getCode())) { dataMap.put("XZYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("XZFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("XZRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); xz = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.QG.getCode())) { dataMap.put("GZYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("QGZFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("GZRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); qg = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.ZG.getCode())) { dataMap.put("ZGZYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("ZGZFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("ZGZRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); zg = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.YG.getCode())) { dataMap.put("YGZYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("YGZFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("YGZRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); yg = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.ZS.getCode())) { dataMap.put("ZSZYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("ZSZFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("ZSZRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); zs = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.YS.getCode())) { dataMap.put("YSZYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("YSZFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("YSZRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); ys = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.QF.getCode())) { dataMap.put("QYFZYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("QYFZFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("QYFZRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); qf = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.ZF.getCode())) { dataMap.put("ZFZYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("ZFZFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("ZFZRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); zf = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.YF.getCode())) { dataMap.put("YFZYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("YFZFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("YFZRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); yf = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.YX.getCode())) { dataMap.put("YXYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("YXFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("YXRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); yx = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.XC.getCode())) { dataMap.put("XCYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("XCYY", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("XCRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); xc = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.ZYJM.getCode())) { dataMap.put("ZYYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("ZYFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("ZYRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); zyjm = true; } else if (donateorganList.get(i).getOrganno().equals(OrganEnum.YYJM.getCode())) { dataMap.put("YYYY", donateorganList.get(i).getTransplanthospitalname() == null ? "" : donateorganList.get(i).getTransplanthospitalname()); dataMap.put("YYFZR", donateorganList.get(i).getOrgangetdoct() == null ? "" : donateorganList.get(i).getOrgangetdoct()); dataMap.put("YYRQ", donateorganList.get(i).getOrgangettime() == null ? "" : sformat.format(donateorganList.get(i).getOrgangettime())); yyjm = true; } } if (xz.booleanValue() == false) { dataMap.put("XZYY", ""); dataMap.put("XZFZR", ""); dataMap.put("XZRQ", ""); } if (qg.booleanValue() == false) { dataMap.put("GZYY", ""); dataMap.put("QGZFZR", ""); dataMap.put("GZRQ", ""); } if (zg.booleanValue() == false) { dataMap.put("ZGZYY", ""); dataMap.put("ZGZFZR", ""); dataMap.put("ZGZRQ", ""); } if (yg.booleanValue() == false) { dataMap.put("YGZYY", ""); dataMap.put("YGZFZR", ""); dataMap.put("YGZRQ", ""); } if (zs.booleanValue() == false) { dataMap.put("ZSZYY", ""); dataMap.put("ZSZFZR", ""); dataMap.put("ZSZRQ", ""); } if (ys.booleanValue() == false) { dataMap.put("YSZYY", ""); dataMap.put("YSZFZR", ""); dataMap.put("YSZRQ", ""); } if (qf.booleanValue() == false) { dataMap.put("QYFZYY", ""); dataMap.put("QYFZFZR", ""); dataMap.put("QYFZRQ", ""); } if (zf.booleanValue() == false) { dataMap.put("ZFZYY", ""); dataMap.put("ZFZFZR", ""); dataMap.put("ZFZRQ", ""); } if (yf.booleanValue() == false) { dataMap.put("YFZYY", ""); dataMap.put("YFZFZR", ""); dataMap.put("YFZRQ", ""); } if (yx.booleanValue() == false) { dataMap.put("YXYY", ""); dataMap.put("YXFZR", ""); dataMap.put("YXRQ", ""); } if (xc.booleanValue() == false) { dataMap.put("XCYY", ""); dataMap.put("XCFZR", ""); dataMap.put("XCRQ", ""); } if (zyjm.booleanValue() == false) { dataMap.put("ZYYY", ""); dataMap.put("ZYFZR", ""); dataMap.put("ZYRQ", ""); } if (yyjm.booleanValue() == false) { dataMap.put("YYYY", ""); dataMap.put("YYFZR", ""); dataMap.put("YYRQ", ""); } } dataMap.put("FZR", donationWitness.getResponsibleusername() == null ? "" : donationWitness.getResponsibleusername()); dataMap.put("XTY1", donationWitness.getCoordinatedusernameo() == null ? "" : donationWitness.getCoordinatedusernameo()); dataMap.put("XTY2", donationWitness.getCoordinatedusernamet() == null ? "" : donationWitness.getCoordinatedusernamet()); Date dt = donationWitness.getOperationendtime(); SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd"); String date = formatter.format(dt); dataMap.put("HQRQ", donationWitness.getOperationendtime() == null ? "" : date); } @ApiOperation("数据大屏获取占比统计") @GetMapping(value = "/getStats") public AjaxResult getStats(TimeVO timeVO) { return AjaxResult.success(serviceDonationwitnessService.getStats(timeVO)); } @RepeatSubmit @ApiOperation("新增或修改捐献见证管理") @Log(title = "捐献完成", businessType = BusinessType.UPDATE) @PostMapping("/saveOrUpdateDonationwitness") public AjaxResult saveOrUpdateDonationwitness(@RequestBody List serviceDonationwitnessList) { if (CollectionUtils.isEmpty(serviceDonationwitnessList)) { throw new BaseException("请检查需要新增或修改的捐献见证管理参数是否完整"); } Boolean i = null; for (ServiceDonationwitness serviceDonationwitness : serviceDonationwitnessList) { log.info("捐献见证管理id是否为空 : {},基础表的id为 : {}", serviceDonationwitness.getId(), serviceDonationwitness.getInfoid()); if (serviceDonationwitness.getId() == null) { i = serviceDonationwitnessService.save(serviceDonationwitness); } else { i = serviceDonationwitnessService.updateById(serviceDonationwitness); } } return toAjax(i); } }