From 73f5b82df781d2b061ba24d29182f6898b5535d9 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期日, 28 十二月 2025 14:34:04 +0800
Subject: [PATCH] 代码提交
---
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceAttendancerecords.java | 156 ++
ruoyi-project/src/main/java/com/ruoyi/project/domain/BaseOrganization.java | 169 ++
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatemaintenanceServiceImpl.java | 58 +
ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoReportMapper.xml | 32
ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml | 15
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java | 16
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMeetingParticipantController.java | 116 ++
ruoyi-generator/src/main/resources/vm/xml/mapper.xml.vm | 10
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VUserOrgServiceImpl.java | 72 +
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceTrainingRecords.java | 150 ++
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java | 26
ruoyi-project/src/main/java/com/ruoyi/project/mapper/VUserOrgMapper.java | 25
ruoyi-project/src/main/resources/mapper/project/ServiceDonatemaintenanceMapper.xml | 54 +
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceMeetingParticipantService.java | 23
ruoyi-generator/src/main/resources/generator.yml | 8
ruoyi-project/src/main/resources/mapper/project/VUserOrgMapper.xml | 60 +
ruoyi-admin/src/main/resources/application-srm.yml | 4
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java | 67 +
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceEthicalreviewinitiateServiceImpl.java | 30
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceTrainingRecordsService.java | 23
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceMeetingParticipant.java | 102 +
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportFileController.java | 2
ruoyi-project/src/main/java/com/ruoyi/project/service/IVUserOrgService.java | 24
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTrainingRecordsServiceImpl.java | 109 ++
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceAttendancerecordsService.java | 23
ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java | 222 +--
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceTrainingRecordsMapper.java | 25
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceMeeting.java | 168 +++
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMeetingServiceImpl.java | 117 ++
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceEthicalreviewinitiate.java | 58 +
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTransportServiceImpl.java | 9
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatemaintenanceController.java | 105 +
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportController.java | 11
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonatemaintenanceMapper.java | 25
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoReportService.java | 7
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/BaseOrganizationServiceImpl.java | 12
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java | 17
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTrainingRecordsController.java | 116 ++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportController.java | 32
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/VUserOrgController.java | 103 +
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceAttendancerecordsController.java | 110 ++
ruoyi-project/src/main/resources/mapper/project/BaseOrganizationMapper.xml | 14
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceMeetingParticipantMapper.java | 25
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceMeetingMapper.java | 25
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatemaintenance.java | 84 +
ruoyi-admin/pom.xml | 2
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMeetingParticipantServiceImpl.java | 78 +
ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewinitiateMapper.xml | 25
ruoyi-project/src/main/java/com/ruoyi/project/domain/VUserOrg.java | 84 +
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatemaintenanceService.java | 24
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfo.java | 33
ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceMeetingService.java | 23
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMeetingController.java | 116 ++
ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfoReport.java | 52
ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportFileController.java | 2
ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceAttendancerecordsMapper.java | 26
ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceAttendancerecordsServiceImpl.java | 91 +
57 files changed, 2,955 insertions(+), 260 deletions(-)
diff --git a/ruoyi-admin/pom.xml b/ruoyi-admin/pom.xml
index 402ce1e..8a5c073 100644
--- a/ruoyi-admin/pom.xml
+++ b/ruoyi-admin/pom.xml
@@ -10,7 +10,7 @@
<modelVersion>4.0.0</modelVersion>
<!-- <packaging>war</packaging>-->
<packaging>jar</packaging>
- <artifactId>smartor-opo</artifactId>
+ <artifactId>smartor-opo-qd</artifactId>
<description>
web鏈嶅姟鍏ュ彛
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceAttendancerecordsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceAttendancerecordsController.java
new file mode 100644
index 0000000..2a1c23f
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceAttendancerecordsController.java
@@ -0,0 +1,110 @@
+package com.ruoyi.web.controller.project;
+
+import java.util.Arrays;
+import java.util.List;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+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.ServiceAttendancerecords;
+import com.ruoyi.project.service.IServiceAttendancerecordsService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 鑰冨嫟璁板綍Controller
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Api(description = "鑰冨嫟璁板綍")
+@RestController
+@RequestMapping("/project/attendancerecords")
+public class ServiceAttendancerecordsController extends BaseController {
+ @Autowired
+ private IServiceAttendancerecordsService serviceAttendancerecordsService;
+
+ /**
+ * 鏌ヨ鑰冨嫟璁板綍鍒楄〃
+ */
+ @ApiOperation("鏌ヨ鑰冨嫟璁板綍鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('project:attendancerecords:list')")
+ @PostMapping("/list")
+ public TableDataInfo list(ServiceAttendancerecords serviceAttendancerecords) {
+ startPage();
+ List<ServiceAttendancerecords> list = serviceAttendancerecordsService.queryList(serviceAttendancerecords);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭鑰冨嫟璁板綍鍒楄〃
+ */
+ @ApiOperation("瀵煎嚭鑰冨嫟璁板綍鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('project:attendancerecords:export')")
+ @Log(title = "鑰冨嫟璁板綍", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(ServiceAttendancerecords serviceAttendancerecords) {
+ List<ServiceAttendancerecords> list = serviceAttendancerecordsService.queryList(serviceAttendancerecords);
+ ExcelUtil<ServiceAttendancerecords> util = new ExcelUtil<ServiceAttendancerecords>(ServiceAttendancerecords.class);
+ return util.exportExcel(list, "鑰冨嫟璁板綍鏁版嵁");
+ }
+
+ /**
+ * 鑾峰彇鑰冨嫟璁板綍璇︾粏淇℃伅
+ */
+ @ApiOperation("鑾峰彇鑰冨嫟璁板綍璇︾粏淇℃伅")
+ // @PreAuthorize("@ss.hasPermi('project:attendancerecords:query')")
+ @GetMapping(value = "/getInfo/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id) {
+ return AjaxResult.success(serviceAttendancerecordsService.getById(id));
+ }
+
+ /**
+ * 鏂板鑰冨嫟璁板綍
+ */
+ @ApiOperation("鏂板鑰冨嫟璁板綍")
+ // @PreAuthorize("@ss.hasPermi('project:attendancerecords:add')")
+ @Log(title = "鑰冨嫟璁板綍", businessType = BusinessType.INSERT)
+ @PostMapping("/add")
+ @RepeatSubmit
+ public AjaxResult add(@RequestBody ServiceAttendancerecords serviceAttendancerecords) {
+ return toAjax(serviceAttendancerecordsService.save(serviceAttendancerecords));
+ }
+
+ /**
+ * 淇敼鑰冨嫟璁板綍
+ */
+ @ApiOperation("淇敼鑰冨嫟璁板綍")
+ // @PreAuthorize("@ss.hasPermi('project:attendancerecords:edit')")
+ @Log(title = "鑰冨嫟璁板綍", businessType = BusinessType.UPDATE)
+ @PostMapping("/edit")
+ @RepeatSubmit
+ public AjaxResult edit(@RequestBody ServiceAttendancerecords serviceAttendancerecords) {
+ return toAjax(serviceAttendancerecordsService.updateById(serviceAttendancerecords));
+ }
+
+ /**
+ * 鍒犻櫎鑰冨嫟璁板綍
+ */
+ @ApiOperation("鍒犻櫎鑰冨嫟璁板綍")
+ // @PreAuthorize("@ss.hasPermi('project:attendancerecords:remove')")
+ @Log(title = "鑰冨嫟璁板綍", businessType = BusinessType.DELETE)
+ @GetMapping("/remove/{ids}")
+ public AjaxResult remove(@PathVariable Long[] ids) {
+ return toAjax(serviceAttendancerecordsService.removeByIds(Arrays.asList(ids)));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportController.java
index 6589c33..ce38fdf 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportController.java
@@ -5,17 +5,25 @@
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.model.LoginUser;
import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.exception.base.BaseException;
+import com.ruoyi.common.utils.SecurityUtils;
+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.VUserOrg;
import com.ruoyi.project.service.IServiceDonatebaseinfoReportFileService;
import com.ruoyi.project.service.IServiceDonatebaseinfoReportService;
+import com.ruoyi.project.service.IVUserOrgService;
import com.ruoyi.system.domain.SysConfig;
import com.ruoyi.system.service.ISysConfigService;
+import com.sun.org.apache.bcel.internal.generic.NEW;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -30,7 +38,7 @@
*/
@Api(description = "鎹愮尞涓婃姤鍩虹")
@RestController
-@RequestMapping("/system/donatebaseinforeport")
+@RequestMapping("/project/donatebaseinforeport")
public class ServiceDonatebaseinfoReportController extends BaseController {
@Autowired
private IServiceDonatebaseinfoReportService serviceDonatebaseinfoReportService;
@@ -38,6 +46,8 @@
private IServiceDonatebaseinfoReportFileService serviceDonatebaseinfoReportFileService;
@Autowired
private ISysConfigService sysConfigService;
+ @Autowired
+ private IVUserOrgService vUserOrgService;
/**
* 鏌ヨ鎹愮尞涓婃姤鍩虹鍒楄〃
@@ -108,6 +118,18 @@
//鐢熸垚妗堜緥涓婃姤ID
String caseNo = String.valueOf(IdGeneratorUtils.nextId());
serviceDonatebaseinfoReport.setCaseNo(caseNo);
+
+ //鑾峰彇鍗忚皟鍛樹俊鎭�
+ LoginUser loginUser = SecurityUtils.getLoginUser();
+ String userName = loginUser.getUser().getUserName();
+ VUserOrg vUserOrg= new VUserOrg();
+ vUserOrg.setUserName(userName);
+ List<VUserOrg> vUserOrgs = vUserOrgService.queryList(vUserOrg);
+ if(CollectionUtils.isNotEmpty(vUserOrgs)){
+ serviceDonatebaseinfoReport.setCoordinatorNo(vUserOrgs.get(0).getCoordinatorNo());
+ serviceDonatebaseinfoReport.setCoordinatorName(vUserOrgs.get(0).getCoordinatorName());
+ }
+
boolean save = serviceDonatebaseinfoReportService.save(serviceDonatebaseinfoReport);
//灏嗙敓鎴愮殑鏂囦欢鍦板潃瀛樺偍鍒版暟鎹簱涓�
if (save)
@@ -123,10 +145,18 @@
@PostMapping("/edit")
@RepeatSubmit
public AjaxResult edit(@RequestBody ServiceDonatebaseinfoReport serviceDonatebaseinfoReport) {
+ if (StringUtils.isEmpty(serviceDonatebaseinfoReport.getCaseNo())) {
+ throw new BaseException("妗堜緥缂栧彿涓虹┖锛岃妫�鏌ュ悗鍐嶄慨鏀�");
+ }
boolean b = serviceDonatebaseinfoReportService.updateById(serviceDonatebaseinfoReport);
if (b) {
serviceDonatebaseinfoReportFileService.updateList(serviceDonatebaseinfoReport.getAnnexfilesList(), serviceDonatebaseinfoReport.getId(), serviceDonatebaseinfoReport.getCaseNo(), getNickName());
+ if (serviceDonatebaseinfoReport.getReportStatus().equals("3")) {
+ //濡傛灉鍚屾剰涓婃姤锛岄偅灏卞彲浠ュ缓妗d簡锛堝線 ServiceDonatebaseinfo鏂板锛�
+ serviceDonatebaseinfoReportService.createDocument(serviceDonatebaseinfoReport);
+ }
}
+
return toAjax(b);
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportFileController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportFileController.java
index f34a4e4..81a99f4 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportFileController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatebaseinfoReportFileController.java
@@ -25,7 +25,7 @@
*/
@Api(description = "妗堜緥涓婃姤闄勪欢")
@RestController
-@RequestMapping("/system/Donatebaseinfofile")
+@RequestMapping("/project/Donatebaseinfofile")
public class ServiceDonatebaseinfoReportFileController extends BaseController {
@Autowired
private IServiceDonatebaseinfoReportFileService serviceDonatebaseinfoReportFileService;
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatemaintenanceController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatemaintenanceController.java
new file mode 100644
index 0000000..1109d6b
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceDonatemaintenanceController.java
@@ -0,0 +1,105 @@
+package com.ruoyi.web.controller.project;
+
+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.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.project.domain.ServiceDonatemaintenance;
+import com.ruoyi.project.service.IServiceDonatemaintenanceService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * 渚涗綋缁存姢璁板綍Controller
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+@Api(description = "渚涗綋缁存姢璁板綍")
+@RestController
+@RequestMapping("/project/donatemaintenance")
+public class ServiceDonatemaintenanceController extends BaseController {
+ @Autowired
+ private IServiceDonatemaintenanceService serviceDonatemaintenanceService;
+
+ /**
+ * 鏌ヨ渚涗綋缁存姢璁板綍鍒楄〃
+ */
+ @ApiOperation("鏌ヨ渚涗綋缁存姢璁板綍鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('system:donatemaintenance:list')")
+ @PostMapping("/list")
+ public TableDataInfo list(ServiceDonatemaintenance serviceDonatemaintenance) {
+ startPage();
+ List<ServiceDonatemaintenance> list = serviceDonatemaintenanceService.queryList(serviceDonatemaintenance);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭渚涗綋缁存姢璁板綍鍒楄〃
+ */
+ @ApiOperation("瀵煎嚭渚涗綋缁存姢璁板綍鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('system:donatemaintenance:export')")
+ @Log(title = "渚涗綋缁存姢璁板綍", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(ServiceDonatemaintenance serviceDonatemaintenance) {
+ List<ServiceDonatemaintenance> list = serviceDonatemaintenanceService.queryList(serviceDonatemaintenance);
+ ExcelUtil<ServiceDonatemaintenance> util = new ExcelUtil<ServiceDonatemaintenance>(ServiceDonatemaintenance.class);
+ return util.exportExcel(list, "渚涗綋缁存姢璁板綍鏁版嵁");
+ }
+
+ /**
+ * 鑾峰彇渚涗綋缁存姢璁板綍璇︾粏淇℃伅
+ */
+ @ApiOperation("鑾峰彇渚涗綋缁存姢璁板綍璇︾粏淇℃伅")
+ // @PreAuthorize("@ss.hasPermi('system:donatemaintenance:query')")
+ @GetMapping(value = "/getInfo/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id) {
+ return AjaxResult.success(serviceDonatemaintenanceService.getById(id));
+ }
+
+ /**
+ * 鏂板渚涗綋缁存姢璁板綍
+ */
+ @ApiOperation("鏂板渚涗綋缁存姢璁板綍")
+ // @PreAuthorize("@ss.hasPermi('system:donatemaintenance:add')")
+ @Log(title = "渚涗綋缁存姢璁板綍", businessType = BusinessType.INSERT)
+ @PostMapping("/add")
+ @RepeatSubmit
+ public AjaxResult add(@RequestBody ServiceDonatemaintenance serviceDonatemaintenance) {
+ return toAjax(serviceDonatemaintenanceService.save(serviceDonatemaintenance));
+ }
+
+ /**
+ * 淇敼渚涗綋缁存姢璁板綍
+ */
+ @ApiOperation("淇敼渚涗綋缁存姢璁板綍")
+ // @PreAuthorize("@ss.hasPermi('system:donatemaintenance:edit')")
+ @Log(title = "渚涗綋缁存姢璁板綍", businessType = BusinessType.UPDATE)
+ @PostMapping("/edit")
+ @RepeatSubmit
+ public AjaxResult edit(@RequestBody ServiceDonatemaintenance serviceDonatemaintenance) {
+ return toAjax(serviceDonatemaintenanceService.updateById(serviceDonatemaintenance));
+ }
+
+ /**
+ * 鍒犻櫎渚涗綋缁存姢璁板綍
+ */
+ @ApiOperation("鍒犻櫎渚涗綋缁存姢璁板綍")
+ // @PreAuthorize("@ss.hasPermi('system:donatemaintenance:remove')")
+ @Log(title = "渚涗綋缁存姢璁板綍", businessType = BusinessType.DELETE)
+ @GetMapping("/remove/{id}")
+ public AjaxResult remove(@PathVariable Long id) {
+ ServiceDonatemaintenance serviceDonatemaintenance = new ServiceDonatemaintenance();
+ serviceDonatemaintenance.setId(id);
+ serviceDonatemaintenance.setDelFlag(1);
+ return toAjax(serviceDonatemaintenanceService.updateById(serviceDonatemaintenance));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMeetingController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMeetingController.java
new file mode 100644
index 0000000..7076edf
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMeetingController.java
@@ -0,0 +1,116 @@
+package com.ruoyi.web.controller.project;
+
+import java.util.Arrays;
+import java.util.List;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+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.ServiceMeeting;
+import com.ruoyi.project.service.IServiceMeetingService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 浼氳绾Controller
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Api(description = "浼氳绾")
+@RestController
+@RequestMapping("/project/meeting")
+public class ServiceMeetingController extends BaseController
+{
+ @Autowired
+ private IServiceMeetingService serviceMeetingService;
+
+ /**
+ * 鏌ヨ浼氳绾鍒楄〃
+ */
+ @ApiOperation("鏌ヨ浼氳绾鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('project:meeting:list')")
+ @PostMapping("/list")
+ public TableDataInfo list(ServiceMeeting serviceMeeting)
+ {
+ startPage();
+ List<ServiceMeeting> list = serviceMeetingService.queryList(serviceMeeting);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭浼氳绾鍒楄〃
+ */
+ @ApiOperation("瀵煎嚭浼氳绾鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('project:meeting:export')")
+ @Log(title = "浼氳绾", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(ServiceMeeting serviceMeeting)
+ {
+ List<ServiceMeeting> list = serviceMeetingService.queryList(serviceMeeting);
+ ExcelUtil<ServiceMeeting> util = new ExcelUtil<ServiceMeeting>(ServiceMeeting.class);
+ return util.exportExcel(list, "浼氳绾鏁版嵁");
+ }
+
+ /**
+ * 鑾峰彇浼氳绾璇︾粏淇℃伅
+ */
+ @ApiOperation("鑾峰彇浼氳绾璇︾粏淇℃伅")
+ // @PreAuthorize("@ss.hasPermi('project:meeting:query')")
+ @GetMapping(value = "/getInfo/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Integer id)
+ {
+ return AjaxResult.success(serviceMeetingService.getById(id));
+ }
+
+ /**
+ * 鏂板浼氳绾
+ */
+ @ApiOperation("鏂板浼氳绾")
+ // @PreAuthorize("@ss.hasPermi('project:meeting:add')")
+ @Log(title = "浼氳绾", businessType = BusinessType.INSERT)
+ @PostMapping("/add")
+ @RepeatSubmit
+ public AjaxResult add(@RequestBody ServiceMeeting serviceMeeting)
+ {
+ return toAjax(serviceMeetingService.save(serviceMeeting));
+ }
+
+ /**
+ * 淇敼浼氳绾
+ */
+ @ApiOperation("淇敼浼氳绾")
+ // @PreAuthorize("@ss.hasPermi('project:meeting:edit')")
+ @Log(title = "浼氳绾", businessType = BusinessType.UPDATE)
+ @PostMapping("/edit")
+ @RepeatSubmit
+ public AjaxResult edit(@RequestBody ServiceMeeting serviceMeeting)
+ {
+ return toAjax(serviceMeetingService.updateById(serviceMeeting));
+ }
+
+ /**
+ * 鍒犻櫎浼氳绾
+ */
+ @ApiOperation("鍒犻櫎浼氳绾")
+ // @PreAuthorize("@ss.hasPermi('project:meeting:remove')")
+ @Log(title = "浼氳绾", businessType = BusinessType.DELETE)
+ @GetMapping("/remove/{ids}")
+ public AjaxResult remove(@PathVariable Integer[] ids)
+ {
+ return toAjax(serviceMeetingService.removeByIds(Arrays.asList(ids)));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMeetingParticipantController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMeetingParticipantController.java
new file mode 100644
index 0000000..c72fec3
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceMeetingParticipantController.java
@@ -0,0 +1,116 @@
+package com.ruoyi.web.controller.project;
+
+import java.util.Arrays;
+import java.util.List;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+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.ServiceMeetingParticipant;
+import com.ruoyi.project.service.IServiceMeetingParticipantService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 鍙備細浜哄憳Controller
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Api(description = "鍙備細浜哄憳")
+@RestController
+@RequestMapping("/project/participant")
+public class ServiceMeetingParticipantController extends BaseController
+{
+ @Autowired
+ private IServiceMeetingParticipantService serviceMeetingParticipantService;
+
+ /**
+ * 鏌ヨ鍙備細浜哄憳鍒楄〃
+ */
+ @ApiOperation("鏌ヨ鍙備細浜哄憳鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('project:participant:list')")
+ @PostMapping("/list")
+ public TableDataInfo list(ServiceMeetingParticipant serviceMeetingParticipant)
+ {
+ startPage();
+ List<ServiceMeetingParticipant> list = serviceMeetingParticipantService.queryList(serviceMeetingParticipant);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭鍙備細浜哄憳鍒楄〃
+ */
+ @ApiOperation("瀵煎嚭鍙備細浜哄憳鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('project:participant:export')")
+ @Log(title = "鍙備細浜哄憳", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(ServiceMeetingParticipant serviceMeetingParticipant)
+ {
+ List<ServiceMeetingParticipant> list = serviceMeetingParticipantService.queryList(serviceMeetingParticipant);
+ ExcelUtil<ServiceMeetingParticipant> util = new ExcelUtil<ServiceMeetingParticipant>(ServiceMeetingParticipant.class);
+ return util.exportExcel(list, "鍙備細浜哄憳鏁版嵁");
+ }
+
+ /**
+ * 鑾峰彇鍙備細浜哄憳璇︾粏淇℃伅
+ */
+ @ApiOperation("鑾峰彇鍙備細浜哄憳璇︾粏淇℃伅")
+ // @PreAuthorize("@ss.hasPermi('project:participant:query')")
+ @GetMapping(value = "/getInfo/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Integer id)
+ {
+ return AjaxResult.success(serviceMeetingParticipantService.getById(id));
+ }
+
+ /**
+ * 鏂板鍙備細浜哄憳
+ */
+ @ApiOperation("鏂板鍙備細浜哄憳")
+ // @PreAuthorize("@ss.hasPermi('project:participant:add')")
+ @Log(title = "鍙備細浜哄憳", businessType = BusinessType.INSERT)
+ @PostMapping("/add")
+ @RepeatSubmit
+ public AjaxResult add(@RequestBody ServiceMeetingParticipant serviceMeetingParticipant)
+ {
+ return toAjax(serviceMeetingParticipantService.save(serviceMeetingParticipant));
+ }
+
+ /**
+ * 淇敼鍙備細浜哄憳
+ */
+ @ApiOperation("淇敼鍙備細浜哄憳")
+ // @PreAuthorize("@ss.hasPermi('project:participant:edit')")
+ @Log(title = "鍙備細浜哄憳", businessType = BusinessType.UPDATE)
+ @PostMapping("/edit")
+ @RepeatSubmit
+ public AjaxResult edit(@RequestBody ServiceMeetingParticipant serviceMeetingParticipant)
+ {
+ return toAjax(serviceMeetingParticipantService.updateById(serviceMeetingParticipant));
+ }
+
+ /**
+ * 鍒犻櫎鍙備細浜哄憳
+ */
+ @ApiOperation("鍒犻櫎鍙備細浜哄憳")
+ // @PreAuthorize("@ss.hasPermi('project:participant:remove')")
+ @Log(title = "鍙備細浜哄憳", businessType = BusinessType.DELETE)
+ @GetMapping("/remove/{ids}")
+ public AjaxResult remove(@PathVariable Integer[] ids)
+ {
+ return toAjax(serviceMeetingParticipantService.removeByIds(Arrays.asList(ids)));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTrainingRecordsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTrainingRecordsController.java
new file mode 100644
index 0000000..aa14a09
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTrainingRecordsController.java
@@ -0,0 +1,116 @@
+package com.ruoyi.web.controller.project;
+
+import java.util.Arrays;
+import java.util.List;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+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.ServiceTrainingRecords;
+import com.ruoyi.project.service.IServiceTrainingRecordsService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 浜哄憳杩涗慨绠$悊Controller
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Api(description = "浜哄憳杩涗慨绠$悊")
+@RestController
+@RequestMapping("/project/records")
+public class ServiceTrainingRecordsController extends BaseController
+{
+ @Autowired
+ private IServiceTrainingRecordsService serviceTrainingRecordsService;
+
+ /**
+ * 鏌ヨ浜哄憳杩涗慨绠$悊鍒楄〃
+ */
+ @ApiOperation("鏌ヨ浜哄憳杩涗慨绠$悊鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('project:records:list')")
+ @PostMapping("/list")
+ public TableDataInfo list(ServiceTrainingRecords serviceTrainingRecords)
+ {
+ startPage();
+ List<ServiceTrainingRecords> list = serviceTrainingRecordsService.queryList(serviceTrainingRecords);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭浜哄憳杩涗慨绠$悊鍒楄〃
+ */
+ @ApiOperation("瀵煎嚭浜哄憳杩涗慨绠$悊鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('project:records:export')")
+ @Log(title = "浜哄憳杩涗慨绠$悊", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(ServiceTrainingRecords serviceTrainingRecords)
+ {
+ List<ServiceTrainingRecords> list = serviceTrainingRecordsService.queryList(serviceTrainingRecords);
+ ExcelUtil<ServiceTrainingRecords> util = new ExcelUtil<ServiceTrainingRecords>(ServiceTrainingRecords.class);
+ return util.exportExcel(list, "浜哄憳杩涗慨绠$悊鏁版嵁");
+ }
+
+ /**
+ * 鑾峰彇浜哄憳杩涗慨绠$悊璇︾粏淇℃伅
+ */
+ @ApiOperation("鑾峰彇浜哄憳杩涗慨绠$悊璇︾粏淇℃伅")
+ // @PreAuthorize("@ss.hasPermi('project:records:query')")
+ @GetMapping(value = "/getInfo/{id}")
+ public AjaxResult getInfo(@PathVariable("id") Long id)
+ {
+ return AjaxResult.success(serviceTrainingRecordsService.getById(id));
+ }
+
+ /**
+ * 鏂板浜哄憳杩涗慨绠$悊
+ */
+ @ApiOperation("鏂板浜哄憳杩涗慨绠$悊")
+ // @PreAuthorize("@ss.hasPermi('project:records:add')")
+ @Log(title = "浜哄憳杩涗慨绠$悊", businessType = BusinessType.INSERT)
+ @PostMapping("/add")
+ @RepeatSubmit
+ public AjaxResult add(@RequestBody ServiceTrainingRecords serviceTrainingRecords)
+ {
+ return toAjax(serviceTrainingRecordsService.save(serviceTrainingRecords));
+ }
+
+ /**
+ * 淇敼浜哄憳杩涗慨绠$悊
+ */
+ @ApiOperation("淇敼浜哄憳杩涗慨绠$悊")
+ // @PreAuthorize("@ss.hasPermi('project:records:edit')")
+ @Log(title = "浜哄憳杩涗慨绠$悊", businessType = BusinessType.UPDATE)
+ @PostMapping("/edit")
+ @RepeatSubmit
+ public AjaxResult edit(@RequestBody ServiceTrainingRecords serviceTrainingRecords)
+ {
+ return toAjax(serviceTrainingRecordsService.updateById(serviceTrainingRecords));
+ }
+
+ /**
+ * 鍒犻櫎浜哄憳杩涗慨绠$悊
+ */
+ @ApiOperation("鍒犻櫎浜哄憳杩涗慨绠$悊")
+ // @PreAuthorize("@ss.hasPermi('project:records:remove')")
+ @Log(title = "浜哄憳杩涗慨绠$悊", businessType = BusinessType.DELETE)
+ @GetMapping("/remove/{ids}")
+ public AjaxResult remove(@PathVariable Long[] ids)
+ {
+ return toAjax(serviceTrainingRecordsService.removeByIds(Arrays.asList(ids)));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportController.java
index 1a9e3ed..9d04165 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportController.java
@@ -28,7 +28,7 @@
*/
@Api(description = "渚涜�呰浆杩愮櫥璁�")
@RestController
-@RequestMapping("/system/transport")
+@RequestMapping("/project/transport")
public class ServiceTransportController extends BaseController {
@Autowired
private IServiceTransportService serviceTransportService;
@@ -118,8 +118,11 @@
@ApiOperation("鍒犻櫎渚涜�呰浆杩愮櫥璁�")
// @PreAuthorize("@ss.hasPermi('system:transport:remove')")
@Log(title = "渚涜�呰浆杩愮櫥璁�", businessType = BusinessType.DELETE)
- @GetMapping("/remove/{ids}")
- public AjaxResult remove(@PathVariable Long[] ids) {
- return toAjax(serviceTransportService.removeByIds(Arrays.asList(ids)));
+ @GetMapping("/remove/{id}")
+ public AjaxResult remove(@PathVariable Long id) {
+ ServiceTransport serviceTransport = new ServiceTransport();
+ serviceTransport.setId(id);
+ serviceTransport.setDelFlag(1);
+ return toAjax(serviceTransportService.updateById(serviceTransport));
}
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportFileController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportFileController.java
index 4d1d369..2b9f123 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportFileController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/ServiceTransportFileController.java
@@ -26,7 +26,7 @@
*/
@Api(description = "渚涜�呰浆杩愮櫥璁伴檮浠�")
@RestController
-@RequestMapping("/system/transportfile")
+@RequestMapping("/project/transportfile")
public class ServiceTransportFileController extends BaseController {
@Autowired
private IServiceTransportFileService serviceTransportFileService;
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/VUserOrgController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/VUserOrgController.java
new file mode 100644
index 0000000..66a6070
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/project/VUserOrgController.java
@@ -0,0 +1,103 @@
+package com.ruoyi.web.controller.project;
+
+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.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.project.domain.VUserOrg;
+import com.ruoyi.project.service.IVUserOrgService;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * VIEWController
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+@Api(description = "VIEW")
+@RestController
+@RequestMapping("/project/org")
+public class VUserOrgController extends BaseController {
+ @Autowired
+ private IVUserOrgService vUserOrgService;
+
+ /**
+ * 鏌ヨVIEW鍒楄〃
+ */
+ @ApiOperation("鏌ヨVIEW鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('system:org:list')")
+ @PostMapping("/list")
+ public TableDataInfo list(VUserOrg vUserOrg) {
+ startPage();
+ List<VUserOrg> list = vUserOrgService.queryList(vUserOrg);
+ return getDataTable(list);
+ }
+
+ /**
+ * 瀵煎嚭VIEW鍒楄〃
+ */
+ @ApiOperation("瀵煎嚭VIEW鍒楄〃")
+ // @PreAuthorize("@ss.hasPermi('system:org:export')")
+ @Log(title = "VIEW", businessType = BusinessType.EXPORT)
+ @GetMapping("/export")
+ public AjaxResult export(VUserOrg vUserOrg) {
+ List<VUserOrg> list = vUserOrgService.queryList(vUserOrg);
+ ExcelUtil<VUserOrg> util = new ExcelUtil<VUserOrg>(VUserOrg.class);
+ return util.exportExcel(list, "VIEW鏁版嵁");
+ }
+
+ /**
+ * 鑾峰彇VIEW璇︾粏淇℃伅
+ */
+ @ApiOperation("鑾峰彇VIEW璇︾粏淇℃伅")
+ // @PreAuthorize("@ss.hasPermi('system:org:query')")
+ @GetMapping(value = "/getInfo/{userId}")
+ public AjaxResult getInfo(@PathVariable("userId") Long userId) {
+ return AjaxResult.success(vUserOrgService.getById(userId));
+ }
+
+ /**
+ * 鏂板VIEW
+ */
+ @ApiOperation("鏂板VIEW")
+ // @PreAuthorize("@ss.hasPermi('system:org:add')")
+ @Log(title = "VIEW", businessType = BusinessType.INSERT)
+ @PostMapping("/add")
+ @RepeatSubmit
+ public AjaxResult add(@RequestBody VUserOrg vUserOrg) {
+ return toAjax(vUserOrgService.save(vUserOrg));
+ }
+
+ /**
+ * 淇敼VIEW
+ */
+ @ApiOperation("淇敼VIEW")
+ // @PreAuthorize("@ss.hasPermi('system:org:edit')")
+ @Log(title = "VIEW", businessType = BusinessType.UPDATE)
+ @PostMapping("/edit")
+ @RepeatSubmit
+ public AjaxResult edit(@RequestBody VUserOrg vUserOrg) {
+ return toAjax(vUserOrgService.updateById(vUserOrg));
+ }
+
+ /**
+ * 鍒犻櫎VIEW
+ */
+ @ApiOperation("鍒犻櫎VIEW")
+ // @PreAuthorize("@ss.hasPermi('system:org:remove')")
+ @Log(title = "VIEW", businessType = BusinessType.DELETE)
+ @GetMapping("/remove/{userIds}")
+ public AjaxResult remove(@PathVariable Long[] userIds) {
+ return toAjax(vUserOrgService.removeByIds(Arrays.asList(userIds)));
+ }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
index 38cc839..5cd5425 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysLoginController.java
@@ -15,12 +15,16 @@
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.framework.web.service.SysLoginService;
import com.ruoyi.framework.web.service.SysPermissionService;
+import com.ruoyi.project.domain.BaseOrganization;
+import com.ruoyi.project.mapper.BaseOrganizationMapper;
import com.ruoyi.project.service.DingTalkService;
+import com.ruoyi.project.service.IBaseOrganizationService;
import com.ruoyi.system.service.ISysMenuService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@@ -50,6 +54,9 @@
@Autowired
private DingTalkService dingTalkService;
+
+ @Autowired
+ private IBaseOrganizationService baseOrganizationService;
/**
@@ -133,6 +140,15 @@
// 鏉冮檺闆嗗悎
Set<String> permissions = permissionService.getMenuPermission(user);
+ //鑾峰彇鍗忚皟鍛�
+ BaseOrganization baseOrganization = new BaseOrganization();
+ baseOrganization.setReporterNo(user.getUserName());
+ baseOrganization.setDelFlag(0);
+ List<BaseOrganization> baseOrganizations = baseOrganizationService.queryList(baseOrganization);
+ if (CollectionUtils.isNotEmpty(baseOrganizations) && baseOrganizations.size() > 0) {
+ user.setCoordinatorName(baseOrganizations.get(0).getCoordinatorName());
+ user.setCoordinatorNo(baseOrganizations.get(0).getCoordinatorNo());
+ }
AjaxResult ajax = AjaxResult.success();
ajax.put("user", user);
diff --git a/ruoyi-admin/src/main/resources/application-srm.yml b/ruoyi-admin/src/main/resources/application-srm.yml
index b10ffe7..4fa43f7 100644
--- a/ruoyi-admin/src/main/resources/application-srm.yml
+++ b/ruoyi-admin/src/main/resources/application-srm.yml
@@ -7,9 +7,9 @@
# 涓诲簱鏁版嵁婧�
master:
# 鍖婚櫌鐜
- url: jdbc:mysql://129.88.242.37:3308/opo?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+ url: jdbc:mysql://127.0.0.1:3306/opo?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: opo
- password: Smartor.2023
+ password: Smartor.2025
# 浠庡簱鏁版嵁婧�
slave:
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
index 017b8ba..0634e9c 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/entity/SysUser.java
@@ -159,10 +159,36 @@
*/
private String dingUserId;
+ /**
+ * 鍗忚皟鍛樼紪鍙�
+ */
+ private String coordinatorNo;
+
+ /**
+ * 鍗忚皟鍛樺鍚�
+ */
+ private String coordinatorName;
+
public SysUser() {
}
+ public String getCoordinatorNo() {
+ return coordinatorNo;
+ }
+
+ public void setCoordinatorNo(String coordinatorNo) {
+ this.coordinatorNo = coordinatorNo;
+ }
+
+ public String getCoordinatorName() {
+ return coordinatorName;
+ }
+
+ public void setCoordinatorName(String coordinatorName) {
+ this.coordinatorName = coordinatorName;
+ }
+
public String getDingUserId() {
return dingUserId;
}
diff --git a/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java b/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java
index 499da03..faa9b1d 100644
--- a/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java
+++ b/ruoyi-generator/src/main/java/com/ruoyi/generator/service/GenTableServiceImpl.java
@@ -10,6 +10,7 @@
import java.util.stream.Collectors;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
+
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
import org.apache.velocity.Template;
@@ -38,12 +39,11 @@
/**
* 涓氬姟 鏈嶅姟灞傚疄鐜�
- *
+ *
* @author ruoyi
*/
@Service
-public class GenTableServiceImpl implements IGenTableService
-{
+public class GenTableServiceImpl implements IGenTableService {
private static final Logger log = LoggerFactory.getLogger(GenTableServiceImpl.class);
@Autowired
@@ -54,13 +54,12 @@
/**
* 鏌ヨ涓氬姟淇℃伅
- *
+ *
* @param id 涓氬姟ID
* @return 涓氬姟淇℃伅
*/
@Override
- public GenTable selectGenTableById(Long id)
- {
+ public GenTable selectGenTableById(Long id) {
GenTable genTable = genTableMapper.selectGenTableById(id);
setTableFromOptions(genTable);
return genTable;
@@ -68,68 +67,61 @@
/**
* 鏌ヨ涓氬姟鍒楄〃
- *
+ *
* @param genTable 涓氬姟淇℃伅
* @return 涓氬姟闆嗗悎
*/
@Override
- public List<GenTable> selectGenTableList(GenTable genTable)
- {
+ public List<GenTable> selectGenTableList(GenTable genTable) {
return genTableMapper.selectGenTableList(genTable);
}
/**
* 鏌ヨ鎹簱鍒楄〃
- *
+ *
* @param genTable 涓氬姟淇℃伅
* @return 鏁版嵁搴撹〃闆嗗悎
*/
@Override
- public List<GenTable> selectDbTableList(GenTable genTable)
- {
+ public List<GenTable> selectDbTableList(GenTable genTable) {
return genTableMapper.selectDbTableList(genTable);
}
/**
* 鏌ヨ鎹簱鍒楄〃
- *
+ *
* @param tableNames 琛ㄥ悕绉扮粍
* @return 鏁版嵁搴撹〃闆嗗悎
*/
@Override
- public List<GenTable> selectDbTableListByNames(String[] tableNames)
- {
+ public List<GenTable> selectDbTableListByNames(String[] tableNames) {
return genTableMapper.selectDbTableListByNames(tableNames);
}
/**
* 鏌ヨ鎵�鏈夎〃淇℃伅
- *
+ *
* @return 琛ㄤ俊鎭泦鍚�
*/
@Override
- public List<GenTable> selectGenTableAll()
- {
+ public List<GenTable> selectGenTableAll() {
return genTableMapper.selectGenTableAll();
}
/**
* 淇敼涓氬姟
- *
+ *
* @param genTable 涓氬姟淇℃伅
* @return 缁撴灉
*/
@Override
@Transactional
- public void updateGenTable(GenTable genTable)
- {
+ public void updateGenTable(GenTable genTable) {
String options = JSON.toJSONString(genTable.getParams());
genTable.setOptions(options);
int row = genTableMapper.updateGenTable(genTable);
- if (row > 0)
- {
- for (GenTableColumn cenTableColumn : genTable.getColumns())
- {
+ if (row > 0) {
+ for (GenTableColumn cenTableColumn : genTable.getColumns()) {
genTableColumnMapper.updateGenTableColumn(cenTableColumn);
}
}
@@ -137,62 +129,53 @@
/**
* 鍒犻櫎涓氬姟瀵硅薄
- *
+ *
* @param tableIds 闇�瑕佸垹闄ょ殑鏁版嵁ID
* @return 缁撴灉
*/
@Override
@Transactional
- public void deleteGenTableByIds(Long[] tableIds)
- {
+ public void deleteGenTableByIds(Long[] tableIds) {
genTableMapper.deleteGenTableByIds(tableIds);
genTableColumnMapper.deleteGenTableColumnByIds(tableIds);
}
/**
* 瀵煎叆琛ㄧ粨鏋�
- *
+ *
* @param tableList 瀵煎叆琛ㄥ垪琛�
*/
@Override
@Transactional
- public void importGenTable(List<GenTable> tableList)
- {
+ public void importGenTable(List<GenTable> tableList) {
String operName = SecurityUtils.getUsername();
- try
- {
- for (GenTable table : tableList)
- {
+ try {
+ for (GenTable table : tableList) {
String tableName = table.getTableName();
GenUtils.initTable(table, operName);
int row = genTableMapper.insertGenTable(table);
- if (row > 0)
- {
+ if (row > 0) {
// 淇濆瓨鍒椾俊鎭�
List<GenTableColumn> genTableColumns = genTableColumnMapper.selectDbTableColumnsByName(tableName);
- for (GenTableColumn column : genTableColumns)
- {
+ for (GenTableColumn column : genTableColumns) {
GenUtils.initColumnField(column, table);
genTableColumnMapper.insertGenTableColumn(column);
}
}
}
- }
- catch (Exception e)
- {
+ } catch (Exception e) {
throw new ServiceException("瀵煎叆澶辫触锛�" + e.getMessage());
}
}
/**
* 棰勮浠g爜
- *
+ *
* @param tableId 琛ㄧ紪鍙�
* @return 棰勮鏁版嵁鍒楄〃
*/
@Override
- public Map<String, String> previewCode(Long tableId)
- {
+ public Map<String, String> previewCode(Long tableId) {
Map<String, String> dataMap = new LinkedHashMap<>();
// 鏌ヨ琛ㄤ俊鎭�
GenTable table = genTableMapper.selectGenTableById(tableId);
@@ -206,8 +189,7 @@
// 鑾峰彇妯℃澘鍒楄〃
List<String> templates = VelocityUtils.getTemplateList(table.getTplCategory());
- for (String template : templates)
- {
+ for (String template : templates) {
// 娓叉煋妯℃澘
StringWriter sw = new StringWriter();
Template tpl = Velocity.getTemplate(template, Constants.UTF8);
@@ -219,13 +201,12 @@
/**
* 鐢熸垚浠g爜锛堜笅杞芥柟寮忥級
- *
+ *
* @param tableName 琛ㄥ悕绉�
* @return 鏁版嵁
*/
@Override
- public byte[] downloadCode(String tableName)
- {
+ public byte[] downloadCode(String tableName) {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
ZipOutputStream zip = new ZipOutputStream(outputStream);
generatorCode(tableName, zip);
@@ -235,12 +216,11 @@
/**
* 鐢熸垚浠g爜锛堣嚜瀹氫箟璺緞锛�
- *
+ *
* @param tableName 琛ㄥ悕绉�
*/
@Override
- public void generatorCode(String tableName)
- {
+ public void generatorCode(String tableName) {
// 鏌ヨ琛ㄤ俊鎭�
GenTable table = genTableMapper.selectGenTableByName(tableName);
// 璁剧疆涓诲瓙琛ㄤ俊鎭�
@@ -254,21 +234,16 @@
// 鑾峰彇妯℃澘鍒楄〃
List<String> templates = VelocityUtils.getTemplateList(table.getTplCategory());
- for (String template : templates)
- {
- if (!StringUtils.containsAny(template, "sql.vm", "api.js.vm", "index.vue.vm", "index-tree.vue.vm"))
- {
+ for (String template : templates) {
+ if (!StringUtils.containsAny(template, "sql.vm", "api.js.vm", "index.vue.vm", "index-tree.vue.vm")) {
// 娓叉煋妯℃澘
StringWriter sw = new StringWriter();
Template tpl = Velocity.getTemplate(template, Constants.UTF8);
tpl.merge(context, sw);
- try
- {
+ try {
String path = getGenPath(table, template);
FileUtils.writeStringToFile(new File(path), sw.toString(), CharsetKit.UTF_8);
- }
- catch (IOException e)
- {
+ } catch (IOException e) {
throw new ServiceException("娓叉煋妯℃澘澶辫触锛岃〃鍚嶏細" + table.getTableName());
}
}
@@ -277,52 +252,46 @@
/**
* 鍚屾鏁版嵁搴�
- *
+ *
* @param tableName 琛ㄥ悕绉�
*/
@Override
@Transactional
- public void synchDb(String tableName)
- {
+ public void synchDb(String tableName) {
GenTable table = genTableMapper.selectGenTableByName(tableName);
List<GenTableColumn> tableColumns = table.getColumns();
List<String> tableColumnNames = tableColumns.stream().map(GenTableColumn::getColumnName).collect(Collectors.toList());
List<GenTableColumn> dbTableColumns = genTableColumnMapper.selectDbTableColumnsByName(tableName);
- if (StringUtils.isEmpty(dbTableColumns))
- {
+ if (StringUtils.isEmpty(dbTableColumns)) {
throw new ServiceException("鍚屾鏁版嵁澶辫触锛屽師琛ㄧ粨鏋勪笉瀛樺湪");
}
List<String> dbTableColumnNames = dbTableColumns.stream().map(GenTableColumn::getColumnName).collect(Collectors.toList());
dbTableColumns.forEach(column -> {
- if (!tableColumnNames.contains(column.getColumnName()))
- {
+ if (!tableColumnNames.contains(column.getColumnName())) {
GenUtils.initColumnField(column, table);
genTableColumnMapper.insertGenTableColumn(column);
}
});
List<GenTableColumn> delColumns = tableColumns.stream().filter(column -> !dbTableColumnNames.contains(column.getColumnName())).collect(Collectors.toList());
- if (StringUtils.isNotEmpty(delColumns))
- {
+ if (StringUtils.isNotEmpty(delColumns)) {
genTableColumnMapper.deleteGenTableColumns(delColumns);
}
}
/**
* 鎵归噺鐢熸垚浠g爜锛堜笅杞芥柟寮忥級
- *
+ *
* @param tableNames 琛ㄦ暟缁�
* @return 鏁版嵁
*/
@Override
- public byte[] downloadCode(String[] tableNames)
- {
+ public byte[] downloadCode(String[] tableNames) {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
ZipOutputStream zip = new ZipOutputStream(outputStream);
- for (String tableName : tableNames)
- {
+ for (String tableName : tableNames) {
generatorCode(tableName, zip);
}
IOUtils.closeQuietly(zip);
@@ -332,8 +301,7 @@
/**
* 鏌ヨ琛ㄤ俊鎭苟鐢熸垚浠g爜
*/
- private void generatorCode(String tableName, ZipOutputStream zip)
- {
+ private void generatorCode(String tableName, ZipOutputStream zip) {
// 鏌ヨ琛ㄤ俊鎭�
GenTable table = genTableMapper.selectGenTableByName(tableName);
// 璁剧疆涓诲瓙琛ㄤ俊鎭�
@@ -347,23 +315,19 @@
// 鑾峰彇妯℃澘鍒楄〃
List<String> templates = VelocityUtils.getTemplateList(table.getTplCategory());
- for (String template : templates)
- {
+ for (String template : templates) {
// 娓叉煋妯℃澘
StringWriter sw = new StringWriter();
Template tpl = Velocity.getTemplate(template, Constants.UTF8);
tpl.merge(context, sw);
- try
- {
+ try {
// 娣诲姞鍒皕ip
zip.putNextEntry(new ZipEntry(VelocityUtils.getFileName(template, table)));
IOUtils.write(sw.toString(), zip, Constants.UTF8);
IOUtils.closeQuietly(sw);
- zip.flush();
+ zip.flush();
zip.closeEntry();
- }
- catch (IOException e)
- {
+ } catch (IOException e) {
log.error("娓叉煋妯℃澘澶辫触锛岃〃鍚嶏細" + table.getTableName(), e);
}
}
@@ -371,36 +335,24 @@
/**
* 淇敼淇濆瓨鍙傛暟鏍¢獙
- *
+ *
* @param genTable 涓氬姟淇℃伅
*/
@Override
- public void validateEdit(GenTable genTable)
- {
- if (GenConstants.TPL_TREE.equals(genTable.getTplCategory()))
- {
+ public void validateEdit(GenTable genTable) {
+ if (GenConstants.TPL_TREE.equals(genTable.getTplCategory())) {
String options = JSON.toJSONString(genTable.getParams());
JSONObject paramsObj = JSONObject.parseObject(options);
- if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_CODE)))
- {
+ if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_CODE))) {
throw new ServiceException("鏍戠紪鐮佸瓧娈典笉鑳戒负绌�");
- }
- else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_PARENT_CODE)))
- {
+ } else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_PARENT_CODE))) {
throw new ServiceException("鏍戠埗缂栫爜瀛楁涓嶈兘涓虹┖");
- }
- else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_NAME)))
- {
+ } else if (StringUtils.isEmpty(paramsObj.getString(GenConstants.TREE_NAME))) {
throw new ServiceException("鏍戝悕绉板瓧娈典笉鑳戒负绌�");
- }
- else if (GenConstants.TPL_SUB.equals(genTable.getTplCategory()))
- {
- if (StringUtils.isEmpty(genTable.getSubTableName()))
- {
+ } else if (GenConstants.TPL_SUB.equals(genTable.getTplCategory())) {
+ if (StringUtils.isEmpty(genTable.getSubTableName())) {
throw new ServiceException("鍏宠仈瀛愯〃鐨勮〃鍚嶄笉鑳戒负绌�");
- }
- else if (StringUtils.isEmpty(genTable.getSubTableFkName()))
- {
+ } else if (StringUtils.isEmpty(genTable.getSubTableFkName())) {
throw new ServiceException("瀛愯〃鍏宠仈鐨勫閿悕涓嶈兘涓虹┖");
}
}
@@ -409,35 +361,27 @@
/**
* 璁剧疆涓婚敭鍒椾俊鎭�
- *
+ *
* @param table 涓氬姟琛ㄤ俊鎭�
*/
- public void setPkColumn(GenTable table)
- {
- for (GenTableColumn column : table.getColumns())
- {
- if (column.isPk())
- {
+ public void setPkColumn(GenTable table) {
+ for (GenTableColumn column : table.getColumns()) {
+ if (column.isPk()) {
table.setPkColumn(column);
break;
}
}
- if (StringUtils.isNull(table.getPkColumn()))
- {
+ if (StringUtils.isNull(table.getPkColumn())) {
table.setPkColumn(table.getColumns().get(0));
}
- if (GenConstants.TPL_SUB.equals(table.getTplCategory()))
- {
- for (GenTableColumn column : table.getSubTable().getColumns())
- {
- if (column.isPk())
- {
+ if (GenConstants.TPL_SUB.equals(table.getTplCategory())) {
+ for (GenTableColumn column : table.getSubTable().getColumns()) {
+ if (column.isPk()) {
table.getSubTable().setPkColumn(column);
break;
}
}
- if (StringUtils.isNull(table.getSubTable().getPkColumn()))
- {
+ if (StringUtils.isNull(table.getSubTable().getPkColumn())) {
table.getSubTable().setPkColumn(table.getSubTable().getColumns().get(0));
}
}
@@ -445,34 +389,30 @@
/**
* 璁剧疆涓诲瓙琛ㄤ俊鎭�
- *
+ *
* @param table 涓氬姟琛ㄤ俊鎭�
*/
- public void setSubTable(GenTable table)
- {
+ public void setSubTable(GenTable table) {
String subTableName = table.getSubTableName();
- if (StringUtils.isNotEmpty(subTableName))
- {
+ if (StringUtils.isNotEmpty(subTableName)) {
table.setSubTable(genTableMapper.selectGenTableByName(subTableName));
}
}
/**
* 璁剧疆浠g爜鐢熸垚鍏朵粬閫夐」鍊�
- *
+ *
* @param genTable 璁剧疆鍚庣殑鐢熸垚瀵硅薄
*/
- public void setTableFromOptions(GenTable genTable)
- {
+ public void setTableFromOptions(GenTable genTable) {
JSONObject paramsObj = JSONObject.parseObject(genTable.getOptions());
- if (StringUtils.isNotNull(paramsObj))
- {
+ if (StringUtils.isNotNull(paramsObj)) {
String treeCode = paramsObj.getString(GenConstants.TREE_CODE);
String treeParentCode = paramsObj.getString(GenConstants.TREE_PARENT_CODE);
String treeName = paramsObj.getString(GenConstants.TREE_NAME);
String parentMenuId = paramsObj.getString(GenConstants.PARENT_MENU_ID);
String parentMenuName = paramsObj.getString(GenConstants.PARENT_MENU_NAME);
-
+
genTable.setTreeCode(treeCode);
genTable.setTreeParentCode(treeParentCode);
genTable.setTreeName(treeName);
@@ -483,18 +423,16 @@
/**
* 鑾峰彇浠g爜鐢熸垚鍦板潃
- *
- * @param table 涓氬姟琛ㄤ俊鎭�
+ *
+ * @param table 涓氬姟琛ㄤ俊鎭�
* @param template 妯℃澘鏂囦欢璺緞
* @return 鐢熸垚鍦板潃
*/
- public static String getGenPath(GenTable table, String template)
- {
+ public static String getGenPath(GenTable table, String template) {
String genPath = table.getGenPath();
- if (StringUtils.equals(genPath, "/"))
- {
+ if (StringUtils.equals(genPath, "/")) {
return System.getProperty("user.dir") + File.separator + "src" + File.separator + VelocityUtils.getFileName(template, table);
}
return genPath + File.separator + VelocityUtils.getFileName(template, table);
}
-}
\ No newline at end of file
+}
diff --git a/ruoyi-generator/src/main/resources/generator.yml b/ruoyi-generator/src/main/resources/generator.yml
index 5bd3dd6..e3ac616 100644
--- a/ruoyi-generator/src/main/resources/generator.yml
+++ b/ruoyi-generator/src/main/resources/generator.yml
@@ -1,10 +1,10 @@
# 浠g爜鐢熸垚
-gen:
+gen:
# 浣滆��
- author: ruoyi
+ author: ls
# 榛樿鐢熸垚鍖呰矾寰� system 闇�鏀规垚鑷繁鐨勬ā鍧楀悕绉� 濡� system monitor tool
- packageName: com.ruoyi.system
+ packageName: com.ruoyi.project
# 鑷姩鍘婚櫎琛ㄥ墠缂�锛岄粯璁ゆ槸false
autoRemovePre: false
# 琛ㄥ墠缂�锛堢敓鎴愮被鍚嶄笉浼氬寘鍚〃鍓嶇紑锛屽涓敤閫楀彿鍒嗛殧锛�
- tablePrefix: sys_
\ No newline at end of file
+ tablePrefix: sys_
diff --git a/ruoyi-generator/src/main/resources/vm/xml/mapper.xml.vm b/ruoyi-generator/src/main/resources/vm/xml/mapper.xml.vm
index 321430b..03da149 100644
--- a/ruoyi-generator/src/main/resources/vm/xml/mapper.xml.vm
+++ b/ruoyi-generator/src/main/resources/vm/xml/mapper.xml.vm
@@ -3,15 +3,15 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="${packageName}.mapper.${ClassName}Mapper">
-
- <resultMap type="${ClassName}" id="${ClassName}Result">
+
+ <resultMap type="${packageName}.domain.${ClassName}" id="${ClassName}Result">
#foreach ($column in $columns)
<result property="${column.javaField}" column="${column.columnName}" />
#end
</resultMap>
#if($table.sub)
- <resultMap id="${ClassName}${subClassName}Result" type="${ClassName}" extends="${ClassName}Result">
+ <resultMap id="${ClassName}${subClassName}Result" type="${packageName}.domain.${ClassName}" extends="${ClassName}Result">
<collection property="${subclassName}List" notNullColumn="sub_${subTable.pkColumn.columnName}" javaType="java.util.List" resultMap="${subClassName}Result" />
</resultMap>
@@ -26,7 +26,7 @@
select#foreach($column in $columns) $column.columnName#if($velocityCount != $columns.size()),#end#end from ${tableName}
</sql>
- <select id="select${ClassName}List" parameterType="${ClassName}" resultMap="${ClassName}Result">
+ <select id="select${ClassName}List" parameterType="${packageName}.domain.${ClassName}" resultMap="${ClassName}Result">
<include refid="select${ClassName}Vo"/>
<where>
#foreach($column in $columns)
@@ -58,4 +58,4 @@
</where>
</select>
-</mapper>
\ No newline at end of file
+</mapper>
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/BaseOrganization.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/BaseOrganization.java
index e4eb356..7e6c76c 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/BaseOrganization.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/BaseOrganization.java
@@ -13,161 +13,244 @@
/**
* 鏈烘瀯绠$悊瀵硅薄 base_organization
- *
+ *
* @author ruoyi
* @date 2021-11-05
*/
@Data
@ApiModel("鏈烘瀯")
-public class BaseOrganization extends BaseEntity
-{
+public class BaseOrganization extends BaseEntity {
private static final long serialVersionUID = 1L;
- /** 涓婚敭鑷 */
+ /**
+ * 涓婚敭鑷
+ */
@ApiModelProperty("涓婚敭鑷")
//鏁版嵁搴撹嚜澧炴敼鎴怈TableId(type = IdType.AUTO)
@TableId(type = IdType.AUTO)
private Long id;
- /** 缁勭粐鍚嶇О */
+ /**
+ * 缁勭粐鍚嶇О
+ */
@ApiModelProperty("缁勭粐鍚嶇О")
@Excel(name = "缁勭粐鍚嶇О")
private String organizationname;
- /** 缁勭粐缂栧彿 */
+ /**
+ * 缁勭粐缂栧彿
+ */
@ApiModelProperty("缁勭粐缂栧彿")
@Excel(name = "缁勭粐缂栧彿")
private String organizationid;
- /** logo鍥剧墖璺緞 */
+ /**
+ * logo鍥剧墖璺緞
+ */
@ApiModelProperty("logo鍥剧墖璺緞")
@Excel(name = "logo鍥剧墖璺緞")
private String logourl;
- /** 娉ㄥ唽鏃堕棿 */
+ /**
+ * 娉ㄥ唽鏃堕棿
+ */
@ApiModelProperty("娉ㄥ唽鏃堕棿")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "娉ㄥ唽鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date registertime;
- /** 娉ㄥ唽鍦扮偣璇︾粏鍦板潃 */
+ /**
+ * 娉ㄥ唽鍦扮偣璇︾粏鍦板潃
+ */
@ApiModelProperty("娉ㄥ唽鍦扮偣璇︾粏鍦板潃")
@Excel(name = "娉ㄥ唽鍦扮偣璇︾粏鍦板潃")
private String registeraddress;
- /** 鍔炲叕鍦扮偣 */
+ /**
+ * 鍔炲叕鍦扮偣
+ */
@ApiModelProperty("鍔炲叕鍦扮偣")
@Excel(name = "鍔炲叕鍦扮偣")
private String officeplace;
- /** 娉曚汉 */
+ /**
+ * 娉曚汉
+ */
@ApiModelProperty("娉曚汉")
@Excel(name = "娉曚汉")
private String legalperson;
- /** 鑱旂郴浜� */
+ /**
+ * 鑱旂郴浜�
+ */
@ApiModelProperty("鑱旂郴浜�")
@Excel(name = "鑱旂郴浜�")
private String contactperson;
- /** 鑱旂郴鐢佃瘽 */
+ /**
+ * 鑱旂郴鐢佃瘽
+ */
@ApiModelProperty("鑱旂郴鐢佃瘽")
@Excel(name = "鑱旂郴鐢佃瘽")
private String contactnumber;
- /** 浠嬬粛 */
+ /**
+ * 浠嬬粛
+ */
@ApiModelProperty("浠嬬粛")
@Excel(name = "浠嬬粛")
private String introduction;
- /** 鏈烘瀯绫诲瀷 鏍规嵁瀛楀吀OrganizationType椤�
-1锛歄PO鏈烘瀯
-2锛氱孩鍗佸瓧浼�
-3锛氬尰鐤楁満鏋�
-4锛氳繍杈撳崟浣� */
- @ApiModelProperty("鏈烘瀯绫诲瀷 鏍规嵁瀛楀吀 sys_OrganizationType")
+ /**
+ * 鏈烘瀯绫诲瀷 鏍规嵁瀛楀吀OrganizationType椤�
+ * 1锛歄PO鏈烘瀯
+ * 2锛氱孩鍗佸瓧浼�
+ * 3锛氬尰鐤楁満鏋�
+ * 4锛氳繍杈撳崟浣�
+ */
+ @ApiModelProperty("鏈烘瀯绫诲瀷 鏍规嵁瀛楀吀 sys_OrganizationType")
@Excel(name = "鏈烘瀯绫诲瀷 鏍规嵁瀛楀吀OrganizationType椤� 1锛歄PO鏈烘瀯 2锛氱孩鍗佸瓧浼� 3锛氬尰鐤楁満鏋� 4锛氳繍杈撳崟浣�")
private String organizationtype;
- /** 鍖婚櫌鎬ц川 鏍规嵁瀛楀吀HospitalNature椤�
-A1:缁煎悎鎬у尰闄� 绛�
-
-OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕侀�夋嫨 */
+ /**
+ * 鍖婚櫌鎬ц川 鏍规嵁瀛楀吀HospitalNature椤�
+ * A1:缁煎悎鎬у尰闄� 绛�
+ * <p>
+ * OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕侀�夋嫨
+ */
@ApiModelProperty("鍖婚櫌鎬ц川 鏍规嵁瀛楀吀sys_HospitalNature OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕侀�夋嫨")
@Excel(name = "鍖婚櫌鎬ц川 鏍规嵁瀛楀吀HospitalNature椤� A1:缁煎悎鎬у尰闄� 绛� OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕侀�夋嫨")
private String hospitalnature;
- /** 鍦板尯鎬ц川 鏍规嵁瀛楀吀RegionalLevel椤�
-0锛氱渷鏈骇 绛�
-
-OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕侀�夋嫨 */
- @ApiModelProperty("鍦板尯鎬ц川 鏍规嵁瀛楀吀sys_RegionalLevel OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕侀�夋嫨")
+ /**
+ * 鍦板尯鎬ц川 鏍规嵁瀛楀吀RegionalLevel椤�
+ * 0锛氱渷鏈骇 绛�
+ * <p>
+ * OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕侀�夋嫨
+ */
+ @ApiModelProperty("鍦板尯鎬ц川 鏍规嵁瀛楀吀sys_RegionalLevel OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕侀�夋嫨")
@Excel(name = "鍦板尯鎬ц川 鏍规嵁瀛楀吀RegionalLevel椤� 0锛氱渷鏈骇 绛� OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕侀�夋嫨")
private String regionallevel;
- /** 鍖荤枟鏈烘瀯缂栧彿 濡�0锛氭禉姹熺渷浜烘皯鍖婚櫌 1锛氭澀宸炲競绗竴浜烘皯鍖婚櫌
-OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕佸~鍐� */
+ /**
+ * 鍖荤枟鏈烘瀯缂栧彿 濡�0锛氭禉姹熺渷浜烘皯鍖婚櫌 1锛氭澀宸炲競绗竴浜烘皯鍖婚櫌
+ * OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕佸~鍐�
+ */
@ApiModelProperty("鍖荤枟鏈烘瀯缂栧彿 濡�0锛氭禉姹熺渷浜烘皯鍖婚櫌 1锛氭澀宸炲競绗竴浜烘皯鍖婚櫌OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕佸~鍐�")
@Excel(name = "鍖荤枟鏈烘瀯缂栧彿 濡�0锛氭禉姹熺渷浜烘皯鍖婚櫌 1锛氭澀宸炲競绗竴浜烘皯鍖婚櫌 OrganizationType=2鍖荤枟鏈烘瀯鏃堕渶瑕佸~鍐�")
private String medicalcode;
- /** 鐪佷唤缂栧彿 鏍规嵁琛屾斂鍖哄垝琛� 鎸夋敞鍐屽湴閫夋嫨 */
+ /**
+ * 鐪佷唤缂栧彿 鏍规嵁琛屾斂鍖哄垝琛� 鎸夋敞鍐屽湴閫夋嫨
+ */
@ApiModelProperty("鐪佷唤缂栧彿 鏍规嵁琛屾斂鍖哄垝琛� 鎸夋敞鍐屽湴閫夋嫨")
@Excel(name = "鐪佷唤缂栧彿 鏍规嵁琛屾斂鍖哄垝琛� 鎸夋敞鍐屽湴閫夋嫨")
private String province;
- /** 鐪佷唤鍚嶇О */
+ /**
+ * 鐪佷唤鍚嶇О
+ */
@ApiModelProperty("鐪佷唤鍚嶇О")
@Excel(name = "鐪佷唤鍚嶇О")
private String provincename;
- /** 甯傜紪鍙� 鏍规嵁琛屾斂鍖哄垝琛� */
+ /**
+ * 甯傜紪鍙� 鏍规嵁琛屾斂鍖哄垝琛�
+ */
@ApiModelProperty("甯傜紪鍙� 鏍规嵁琛屾斂鍖哄垝琛�")
@Excel(name = "甯傜紪鍙� 鏍规嵁琛屾斂鍖哄垝琛�")
private String city;
- /** 甯傚悕绉� */
+ /**
+ * 甯傚悕绉�
+ */
@ApiModelProperty("甯傚悕绉�")
@Excel(name = "甯傚悕绉�")
private String cityname;
- /** 鎵�灞炶閬擄紙闀囷級鏍规嵁琛屾斂鍖哄垝琛� */
+ /**
+ * 鎵�灞炶閬擄紙闀囷級鏍规嵁琛屾斂鍖哄垝琛�
+ */
@ApiModelProperty("鎵�灞炶閬擄紙闀囷級鏍规嵁琛屾斂鍖哄垝琛�")
@Excel(name = "鎵�灞炶閬�", readConverterExp = "闀�=")
private String town;
- /** 鎵�灞炶閬擄紙闀囷級鍚嶇О */
+ /**
+ * 鎵�灞炶閬擄紙闀囷級鍚嶇О
+ */
@ApiModelProperty("鎵�灞炶閬擄紙闀囷級鍚嶇О")
@Excel(name = "鎵�灞炶閬�", readConverterExp = "闀�=")
private String townname;
- /** 绀惧尯锛堟潙锛夌紪鍙� 鏍规嵁琛屾斂鍖哄垝琛� */
+ /**
+ * 绀惧尯锛堟潙锛夌紪鍙� 鏍规嵁琛屾斂鍖哄垝琛�
+ */
@ApiModelProperty("绀惧尯锛堟潙锛夌紪鍙� 鏍规嵁琛屾斂鍖哄垝琛�")
@Excel(name = "绀惧尯", readConverterExp = "鏉�=")
private String community;
- /** 绀惧尯锛堟潙锛夊悕绉� */
+ /**
+ * 绀惧尯锛堟潙锛夊悕绉�
+ */
@ApiModelProperty("绀惧尯锛堟潙锛夊悕绉�")
@Excel(name = "绀惧尯", readConverterExp = "鏉�=")
private String communityname;
- /** 鎵�灞炲尯鍩熺紪鍙� 鏍规嵁琛屾斂鍖哄垝琛� */
+ /**
+ * 鎵�灞炲尯鍩熺紪鍙� 鏍规嵁琛屾斂鍖哄垝琛�
+ */
@ApiModelProperty("鎵�灞炲尯鍩熺紪鍙� 鏍规嵁琛屾斂鍖哄垝琛�")
@Excel(name = "鎵�灞炲尯鍩熺紪鍙� 鏍规嵁琛屾斂鍖哄垝琛�")
private String countycode;
- /** 鎵�灞炲尯鍩熷悕绉� */
+ /**
+ * 鎵�灞炲尯鍩熷悕绉�
+ */
@ApiModelProperty("鎵�灞炲尯鍩熷悕绉�")
@Excel(name = "鎵�灞炲尯鍩熷悕绉�")
private String countyname;
- /** 鎵�灞炲尯鍩熷悕绉� */
+
+ /**
+ * 鎵�灞炲尯鍩熷悕绉�
+ */
@ApiModelProperty("閾惰鍚嶇О")
@Excel(name = "閾惰鍚嶇О")
private String bankname;
- /** 鎵�灞炲尯鍩熷悕绉� */
+
+ /**
+ * 鎵�灞炲尯鍩熷悕绉�
+ */
@ApiModelProperty("閾惰璐﹀彿")
@Excel(name = "閾惰璐﹀彿")
private String bankaccount;
+ /**
+ * 涓婃姤浜哄憳缂栧彿
+ */
+ @ApiModelProperty("涓婃姤浜哄憳缂栧彿")
+ @Excel(name = "涓婃姤浜哄憳缂栧彿")
+ private String reporterNo;
+
+ /**
+ * 涓婃姤浜哄憳濮撳悕
+ */
+ @ApiModelProperty("涓婃姤浜哄憳濮撳悕")
+ @Excel(name = "涓婃姤浜哄憳濮撳悕")
+ private String reporterName;
+
+ /**
+ * 鍗忚皟鍛樼紪鍙�
+ */
+ @ApiModelProperty("鍗忚皟鍛樼紪鍙�")
+ @Excel(name = "鍗忚皟鍛樼紪鍙�")
+ private String coordinatorNo;
+
+ /**
+ * 鍗忚皟鍛樺鍚�
+ */
+ @ApiModelProperty("鍗忚皟鍛樺鍚�")
+ @Excel(name = "鍗忚皟鍛樺鍚�")
+ private String coordinatorName;
+
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceAttendancerecords.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceAttendancerecords.java
new file mode 100644
index 0000000..f6039e1
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceAttendancerecords.java
@@ -0,0 +1,156 @@
+package com.ruoyi.project.domain;
+
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 鑰冨嫟璁板綍瀵硅薄 service_attendancerecords
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Data
+@ApiModel("鑰冨嫟璁板綍")
+public class ServiceAttendancerecords extends BaseEntity {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 鑰冨嫟璁板綍ID
+ */
+ @ApiModelProperty("鑰冨嫟璁板綍ID")
+ //鏁版嵁搴撹嚜澧炴敼鎴怈TableId(type = IdType.AUTO)
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 浜哄憳缂栧彿
+ */
+ @ApiModelProperty("浜哄憳缂栧彿")
+ @Excel(name = "浜哄憳缂栧彿")
+ private String userNo;
+
+ /**
+ * 浜哄憳濮撳悕
+ */
+ @ApiModelProperty("浜哄憳濮撳悕")
+ @Excel(name = "浜哄憳濮撳悕")
+ private String userName;
+
+ /**
+ * 浜哄憳閮ㄩ棬缂栧彿
+ */
+ @ApiModelProperty("浜哄憳閮ㄩ棬缂栧彿")
+ @Excel(name = "浜哄憳閮ㄩ棬缂栧彿")
+ private String deptNo;
+
+ /**
+ * 浜哄憳閮ㄩ棬鍚嶇О
+ */
+ @ApiModelProperty("浜哄憳閮ㄩ棬鍚嶇О")
+ @Excel(name = "浜哄憳閮ㄩ棬鍚嶇О")
+ private String deptName;
+
+ /**
+ * 鑰冨嫟鏃ユ湡
+ */
+ @ApiModelProperty("鑰冨嫟鏃ユ湡")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "鑰冨嫟鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date attendanceDate;
+
+ /**
+ * 涓婄彮鎵撳崱鏃堕棿
+ */
+ @ApiModelProperty("涓婄彮鎵撳崱鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "涓婄彮鎵撳崱鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date clockInTime;
+
+ /**
+ * 涓嬬彮鎵撳崱鏃堕棿
+ */
+ @ApiModelProperty("涓嬬彮鎵撳崱鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "涓嬬彮鎵撳崱鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date clockOutTime;
+
+ /**
+ * 鑰冨嫟鐘舵��
+ */
+ @ApiModelProperty("鑰冨嫟鐘舵��")
+ @Excel(name = "鑰冨嫟鐘舵��")
+ private String attendanceStatus;
+
+ /**
+ * 瀹為檯宸ヤ綔鏃堕暱锛堝垎閽燂級
+ */
+ @ApiModelProperty("瀹為檯宸ヤ綔鏃堕暱锛堝垎閽燂級")
+ @Excel(name = "瀹為檯宸ヤ綔鏃堕暱", readConverterExp = "鍒�=閽�")
+ private Long workHoursMinutes;
+
+ /**
+ * 鍔犵彮鏃堕暱锛堝垎閽燂級
+ */
+ @ApiModelProperty("鍔犵彮鏃堕暱锛堝垎閽燂級")
+ @Excel(name = "鍔犵彮鏃堕暱", readConverterExp = "鍒�=閽�")
+ private Long overtimeMinutes;
+
+ /**
+ * 鍔犵彮/澶栧嚭鍘熷洜
+ */
+ @ApiModelProperty("鍔犵彮/澶栧嚭鍘熷洜")
+ @Excel(name = "鍔犵彮/澶栧嚭鍘熷洜")
+ private String reason;
+
+ /**
+ * 鑰冨嫟寮傚父鍘熷洜
+ */
+ @ApiModelProperty("鑰冨嫟寮傚父鍘熷洜")
+ @Excel(name = "鑰冨嫟寮傚父鍘熷洜")
+ private String abnormalReason;
+
+ /**
+ * 涓婄彮鎵撳崱鏂瑰紡
+ */
+ @ApiModelProperty("涓婄彮鎵撳崱鏂瑰紡")
+ @Excel(name = "涓婄彮鎵撳崱鏂瑰紡")
+ private String clockInMethod;
+
+ /**
+ * 涓嬬彮鎵撳崱鏂瑰紡
+ */
+ @ApiModelProperty("涓嬬彮鎵撳崱鏂瑰紡")
+ @Excel(name = "涓嬬彮鎵撳崱鏂瑰紡")
+ private String clockOutMethod;
+
+ /**
+ * 涓婄彮鎵撳崱鍦扮偣
+ */
+ @ApiModelProperty("涓婄彮鎵撳崱鍦扮偣")
+ @Excel(name = "涓婄彮鎵撳崱鍦扮偣")
+ private String clockInLocation;
+
+ /**
+ * 涓嬬彮鎵撳崱鍦扮偣
+ */
+ @ApiModelProperty("涓嬬彮鎵撳崱鍦扮偣")
+ @Excel(name = "涓嬬彮鎵撳崱鍦扮偣")
+ private String clockOutLocation;
+
+ /**
+ * 鏁版嵁鏉ユ簮
+ */
+ @ApiModelProperty("鏁版嵁鏉ユ簮")
+ @Excel(name = "鏁版嵁鏉ユ簮")
+ private String dataSource;
+
+}
+
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfo.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfo.java
index 38bb14c..dd13680 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfo.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfo.java
@@ -74,14 +74,14 @@
/**
* 骞撮緞
*/
- @TableField(exist = false)
+// @TableField(exist = false)
@ApiModelProperty("骞撮緞")
private Long age;
/**
* 骞撮緞鍗曚綅
*/
- @TableField(exist = false)
+// @TableField(exist = false)
@ApiModelProperty("骞撮緞鍗曚綅")
private String ageunit;
/**
@@ -501,7 +501,13 @@
* 淇℃伅鍛樺鍚�
*/
@ApiModelProperty("淇℃伅鍛樺鍚�")
- private String infoname;
+ private String infoName;
+
+ /**
+ * 淇℃伅鍛樺鍚�
+ */
+ @ApiModelProperty("淇℃伅鍛樼紪鍙�")
+ private String infoNo;
/**
* 淇℃伅鍛樿仈绯绘柟寮�
@@ -585,5 +591,26 @@
@ApiModelProperty("棣栨鍖荤枟鏈烘瀯绉戝")
private String firstDept;
+ /**
+ * GSC璇勫垎
+ */
+ @ApiModelProperty("GSC璇勫垎")
+ @Excel(name = "GSC璇勫垎", readConverterExp = "GSC璇勫垎")
+ private String gcsScore;
+
+ /**
+ * 鍗忚皟鍛樼紪鍙�
+ */
+ @ApiModelProperty("鍗忚皟鍛樼紪鍙�")
+ @Excel(name = "鍗忚皟鍛樼紪鍙�", readConverterExp = "鍗忚皟鍛樼紪鍙�")
+ private String coordinatorNo;
+
+ /**
+ * 鍗忚皟鍛樺鍚�
+ */
+ @ApiModelProperty("鍗忚皟鍛樺鍚�")
+ @Excel(name = "鍗忚皟鍛樺鍚�", readConverterExp = "鍗忚皟鍛樺鍚�")
+ private String coordinatorName;
+
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfoReport.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfoReport.java
index 3224b47..8003453 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfoReport.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatebaseinfoReport.java
@@ -86,8 +86,8 @@
* 鍑虹敓鏃ユ湡
*/
@ApiModelProperty("鍑虹敓鏃ユ湡")
- @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
- @Excel(name = "鍑虹敓鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "鍑虹敓鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd")
private Date birthday;
/**
@@ -291,14 +291,14 @@
*/
@ApiModelProperty("鎶ュ憡鑰呯紪鍙�")
@Excel(name = "鎶ュ憡鑰呯紪鍙�")
- private String reporterno;
+ private String infoNo;
/**
* 鎶ュ憡鑰呭鍚�
*/
@ApiModelProperty("鎶ュ憡鑰呭鍚�")
@Excel(name = "鎶ュ憡鑰呭鍚�")
- private String reportername;
+ private String infoName;
/**
* 鎶ュ憡鑰呰仈绯荤數璇�
@@ -323,20 +323,6 @@
private Integer terminationCase;
/**
- * 鑱旂郴浜猴紙鍗忚皟鍛樼紪鍙凤級
- */
- @ApiModelProperty("鑱旂郴浜猴紙鍗忚皟鍛橈級")
- @Excel(name = "鑱旂郴浜猴紙鍗忚皟鍛樼紪鍙凤級", readConverterExp = "鍗�=璋冨憳")
- private String userNo;
-
- /**
- * 鑱旂郴浜猴紙鍗忚皟鍛樺鍚嶏級
- */
- @ApiModelProperty("鑱旂郴浜猴紙鍗忚皟鍛橈級")
- @Excel(name = "鑱旂郴浜猴紙鍗忚皟鍛樺鍚嶏級", readConverterExp = "鍗�=璋冨憳")
- private String userName;
-
- /**
* 鑱旂郴浜猴紙鍗忚皟鍛樺鍚嶏級
*/
@ApiModelProperty("閮ㄩ棬缂栧彿")
@@ -355,7 +341,21 @@
*/
@ApiModelProperty("GSC璇勫垎")
@Excel(name = "GSC璇勫垎", readConverterExp = "GSC璇勫垎")
- private String gscScore;
+ private String gcsScore;
+
+ /**
+ * 琛�鍨� 鏍规嵁瀛楀吀sys_BloodType
+ */
+ @ApiModelProperty("琛�鍨� 鏍规嵁瀛楀吀sys_BloodType")
+ @Excel(name = "琛�鍨� 鏍规嵁瀛楀吀sys_BloodType", readConverterExp = "琛�鍨� 鏍规嵁瀛楀吀sys_BloodType")
+ private String bloodType;
+
+ /**
+ * 琛�鍨� 鏍规嵁瀛楀吀sys_BloodType
+ */
+ @ApiModelProperty("Rh闃存�� 0锛氬惁锛�1锛氭槸")
+ @Excel(name = "Rh闃存�� 0锛氬惁锛�1锛氭槸", readConverterExp = "Rh闃存�� 0锛氬惁锛�1锛氭槸")
+ private String rhYin;
/**
* 鏄惁闇�瑕佽浆杩� 1锛氫笉闇�瑕� 2闇�瑕� 榛樿1
@@ -389,5 +389,19 @@
@ApiModelProperty("杞繍淇℃伅")
private List<ServiceTransport> serviceTransport;
+ /**
+ * 鍗忚皟鍛樼紪鍙�
+ */
+ @ApiModelProperty("鍗忚皟鍛樼紪鍙�")
+ @Excel(name = "鍗忚皟鍛樼紪鍙�", readConverterExp = "鍗忚皟鍛樼紪鍙�")
+ private String coordinatorNo;
+
+ /**
+ * 鍗忚皟鍛樺鍚�
+ */
+ @ApiModelProperty("鍗忚皟鍛樺鍚�")
+ @Excel(name = "鍗忚皟鍛樺鍚�", readConverterExp = "鍗忚皟鍛樺鍚�")
+ private String coordinatorName;
+
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatemaintenance.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatemaintenance.java
new file mode 100644
index 0000000..3e2c725
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceDonatemaintenance.java
@@ -0,0 +1,84 @@
+package com.ruoyi.project.domain;
+
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 渚涗綋缁存姢璁板綍瀵硅薄 service_donatemaintenance
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+@Data
+@ApiModel("渚涗綋缁存姢璁板綍")
+public class ServiceDonatemaintenance extends BaseEntity {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * $column.columnComment
+ */
+ @ApiModelProperty("$column.columnComment")
+ //鏁版嵁搴撹嚜澧炴敼鎴怈TableId(type = IdType.AUTO)
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 鍏宠仈service_donatebaseinfo琛ㄧ殑ID
+ */
+ @ApiModelProperty("鍏宠仈service_donatebaseinfo琛ㄧ殑ID")
+ @Excel(name = "鍏宠仈service_donatebaseinfo琛ㄧ殑ID")
+ private Long infoid;
+
+ /**
+ * 妗堜緥缂栧彿
+ */
+ @ApiModelProperty("妗堜緥缂栧彿")
+ @Excel(name = "妗堜緥缂栧彿")
+ private String caseNo;
+
+ /**
+ * 鎹愮尞鑰呯紪鍙�
+ */
+ @ApiModelProperty("鎹愮尞鑰呯紪鍙�")
+ @Excel(name = "鎹愮尞鑰呯紪鍙�")
+ private String donorno;
+
+ /**
+ * 缁存姢椤圭洰缂栧彿
+ */
+ @ApiModelProperty("缁存姢椤圭洰缂栧彿")
+ @Excel(name = "缁存姢椤圭洰缂栧彿")
+ private String itemNo;
+
+ /**
+ * 缁存姢椤圭洰鍚嶇О
+ */
+ @ApiModelProperty("缁存姢椤圭洰鍚嶇О")
+ @Excel(name = "缁存姢椤圭洰鍚嶇О")
+ private String itemName;
+
+ /**
+ * 缁存寔椤圭洰鏃堕棿
+ */
+ @ApiModelProperty("缁存寔椤圭洰鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "缁存寔椤圭洰鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date itemTime;
+
+ /**
+ * 椤圭洰缁存姢璇︽儏锛宩son缁撴瀯
+ */
+ @ApiModelProperty("椤圭洰缁存姢璇︽儏锛宩son缁撴瀯")
+ @Excel(name = "椤圭洰缁存姢璇︽儏锛宩son缁撴瀯")
+ private String itemDesc;
+
+}
+
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceEthicalreviewinitiate.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceEthicalreviewinitiate.java
index 8fe3c7f..3d6208b 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceEthicalreviewinitiate.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceEthicalreviewinitiate.java
@@ -66,5 +66,63 @@
@Excel(name = "鏈夋晥鎴嚦鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date cutOffTime;
+
+ /**
+ * 涓撳鎺掗槦搴忓彿
+ */
+ @ApiModelProperty("涓撳鎺掗槦搴忓彿")
+ @Excel(name = "涓撳鎺掗槦搴忓彿")
+ private Long orderNo;
+
+ /**
+ * 涓撳缁撹 瑙佸瓧鍏� sys_0_1
+ */
+ @ApiModelProperty("涓撳缁撹 瑙佸瓧鍏� sys_0_1 ")
+ @Excel(name = "涓撳缁撹 瑙佸瓧鍏� sys_0_1 ")
+ private String expertConclusion;
+
+ /**
+ * 涓撳鎰忚
+ */
+ @ApiModelProperty("涓撳鎰忚")
+ @Excel(name = "涓撳鎰忚")
+ private String expertOpinion;
+
+ /**
+ * 涓撳缂栧彿
+ */
+ @ApiModelProperty("涓撳缂栧彿")
+ @Excel(name = "涓撳缂栧彿")
+ private String expertNo;
+
+ /**
+ * 涓撳濮撳悕
+ */
+ @ApiModelProperty("涓撳濮撳悕")
+ @Excel(name = "涓撳濮撳悕")
+ private String expertName;
+
+ /**
+ * 涓撳绫诲瀷
+ */
+ @ApiModelProperty("涓撳绫诲瀷")
+ @Excel(name = "涓撳绫诲瀷")
+ private String expertType;
+
+ /**
+ * 涓撳缁撹鏃堕棿
+ */
+ @ApiModelProperty("涓撳缁撹鏃堕棿")
+ @Excel(name = "涓撳缁撹鏃堕棿")
+ private Date expertTime;
+
+ /**
+ * 0锛氭柊寤�;1锛氬鏌ヤ腑;2锛氱粨鏉�
+ */
+ @ApiModelProperty("0锛氭柊寤�;1锛氬鏌ヤ腑;2锛氱粨鏉�")
+ @Excel(name = "0锛氭柊寤�;1锛氬鏌ヤ腑;2锛氱粨鏉�")
+ private String status;
+
+
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceMeeting.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceMeeting.java
new file mode 100644
index 0000000..6f15219
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceMeeting.java
@@ -0,0 +1,168 @@
+package com.ruoyi.project.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 浼氳绾瀵硅薄 service_meeting
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Data
+@ApiModel("浼氳绾")
+public class ServiceMeeting extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 浼氳ID */
+ @ApiModelProperty("浼氳ID")
+ //鏁版嵁搴撹嚜澧炴敼鎴怈TableId(type = IdType.AUTO)
+ @TableId(type = IdType.AUTO)
+ private Integer id;
+
+ /** 浼氳缂栧彿 */
+ @ApiModelProperty("浼氳缂栧彿")
+ @Excel(name = "浼氳缂栧彿")
+ private String meetingNumber;
+
+ /** 浼氳鏍囬 */
+ @ApiModelProperty("浼氳鏍囬")
+ @Excel(name = "浼氳鏍囬")
+ private String title;
+
+ /** 浼氳绫诲瀷ID */
+ @ApiModelProperty("浼氳绫诲瀷ID")
+ @Excel(name = "浼氳绫诲瀷ID")
+ private Integer typeId;
+
+ /** 浼氳鍦扮偣ID */
+ @ApiModelProperty("浼氳鍦扮偣ID")
+ @Excel(name = "浼氳鍦扮偣ID")
+ private Integer locationId;
+
+ /** 缁勭粐鑰匢D */
+ @ApiModelProperty("缁勭粐鑰匢D")
+ @Excel(name = "缁勭粐鑰匢D")
+ private Integer organizerId;
+
+ /** 浼氳寮�濮嬫椂闂� */
+ @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("浼氳姒傝")
+ @Excel(name = "浼氳姒傝")
+ private String summary;
+
+ /** 浼氳鍏蜂綋鍐呭(瀵屾枃鏈�) */
+ @ApiModelProperty("浼氳鍏蜂綋鍐呭(瀵屾枃鏈�)")
+ @Excel(name = "浼氳鍏蜂綋鍐呭(瀵屾枃鏈�)")
+ private String content;
+
+ /** 闄勪欢淇℃伅(JSON鏍煎紡) */
+ @ApiModelProperty("闄勪欢淇℃伅(JSON鏍煎紡)")
+ @Excel(name = "闄勪欢淇℃伅(JSON鏍煎紡)")
+ private String attachment;
+
+ /** 鐘舵��(1:寰呭紑濮�,2:杩涜涓�,3:宸茬粨鏉�,4:宸插彇娑�) */
+ @ApiModelProperty("鐘舵��(1:寰呭紑濮�,2:杩涜涓�,3:宸茬粨鏉�,4:宸插彇娑�)")
+ @Excel(name = "鐘舵��(1:寰呭紑濮�,2:杩涜涓�,3:宸茬粨鏉�,4:宸插彇娑�)")
+ private Integer status;
+
+ /** 鏄惁涓虹郴鍒椾細璁�(1:鏄�,0:鍚�) */
+ @ApiModelProperty("鏄惁涓虹郴鍒椾細璁�(1:鏄�,0:鍚�)")
+ @Excel(name = "鏄惁涓虹郴鍒椾細璁�(1:鏄�,0:鍚�)")
+ private Integer isRecurring;
+
+ /** 閲嶅妯″紡 */
+ @ApiModelProperty("閲嶅妯″紡")
+ @Excel(name = "閲嶅妯″紡")
+ private String recurringPattern;
+
+ /** 鐖朵細璁甀D(鐢ㄤ簬澶嶅埗鎴栫郴鍒椾細璁�) */
+ @ApiModelProperty("鐖朵細璁甀D(鐢ㄤ簬澶嶅埗鎴栫郴鍒椾細璁�)")
+ @Excel(name = "鐖朵細璁甀D(鐢ㄤ簬澶嶅埗鎴栫郴鍒椾細璁�)")
+ private Integer parentMeetingId;
+
+ /** 鎻愬墠鎻愰啋鍒嗛挓鏁� */
+ @ApiModelProperty("鎻愬墠鎻愰啋鍒嗛挓鏁�")
+ @Excel(name = "鎻愬墠鎻愰啋鍒嗛挓鏁�")
+ private Long reminderMinutes;
+
+ /** 绾鍐呭 */
+ @ApiModelProperty("绾鍐呭")
+ @Excel(name = "绾鍐呭")
+ private String recordcontent;
+
+ /** 绾闄勪欢(JSON鏍煎紡) */
+ @ApiModelProperty("绾闄勪欢(JSON鏍煎紡)")
+ @Excel(name = "绾闄勪欢(JSON鏍煎紡)")
+ private String recordattachment;
+
+ /** 璁板綍浜� */
+ @ApiModelProperty("璁板綍浜�")
+ @Excel(name = "璁板綍浜�")
+ private String recorderBy;
+
+ /** 鍒涘缓鏃堕棿 */
+ @ApiModelProperty("鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "鍒涘缓鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date recorderTime;
+
+ /** 瀹℃牳浜篒D */
+ @ApiModelProperty("瀹℃牳浜篒D")
+ @Excel(name = "瀹℃牳浜篒D")
+ private String approverBy;
+
+ /** 瀹℃牳鐘舵��(0:寰呭鏍�,1:宸查�氳繃,2:宸查┏鍥�) */
+ @ApiModelProperty("瀹℃牳鐘舵��(0:寰呭鏍�,1:宸查�氳繃,2:宸查┏鍥�)")
+ @Excel(name = "瀹℃牳鐘舵��(0:寰呭鏍�,1:宸查�氳繃,2:宸查┏鍥�)")
+ private Integer approvalStatus;
+
+ /** 瀹℃牳鏃堕棿 */
+ @ApiModelProperty("瀹℃牳鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "瀹℃牳鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date approvalTime;
+
+ /** 鍒涘缓浜� */
+ @ApiModelProperty("鍒涘缓浜�")
+ @Excel(name = "鍒涘缓浜�")
+ private String createdBy;
+
+ /** 鍒涘缓鏃堕棿 */
+ @ApiModelProperty("鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "鍒涘缓鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date createdTime;
+
+ /** 鏇存柊浜� */
+ @ApiModelProperty("鏇存柊浜�")
+ @Excel(name = "鏇存柊浜�")
+ private String updatedBy;
+
+ /** 鏇存柊鏃堕棿 */
+ @ApiModelProperty("鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "鏇存柊鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date updatedTime;
+
+}
+
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceMeetingParticipant.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceMeetingParticipant.java
new file mode 100644
index 0000000..aacc72d
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceMeetingParticipant.java
@@ -0,0 +1,102 @@
+package com.ruoyi.project.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 鍙備細浜哄憳瀵硅薄 service_meeting_participant
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Data
+@ApiModel("鍙備細浜哄憳")
+public class ServiceMeetingParticipant extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 鍙備細璁板綍ID */
+ @ApiModelProperty("鍙備細璁板綍ID")
+ //鏁版嵁搴撹嚜澧炴敼鎴怈TableId(type = IdType.AUTO)
+ @TableId(type = IdType.AUTO)
+ private Integer id;
+
+ /** 浼氳ID */
+ @ApiModelProperty("浼氳ID")
+ @Excel(name = "浼氳ID")
+ private Integer meetingId;
+
+ /** 鐢ㄦ埛缂栧彿 */
+ @ApiModelProperty("鐢ㄦ埛缂栧彿")
+ @Excel(name = "鐢ㄦ埛缂栧彿")
+ private String userNo;
+
+ /** 鐢ㄦ埛濮撳悕 */
+ @ApiModelProperty("鐢ㄦ埛濮撳悕")
+ @Excel(name = "鐢ㄦ埛濮撳悕")
+ private String userName;
+
+ /** 瑙掕壊(host:涓绘寔浜�,participant:鍙備細浜�,guest:鍢夊) */
+ @ApiModelProperty("瑙掕壊(host:涓绘寔浜�,participant:鍙備細浜�,guest:鍢夊)")
+ @Excel(name = "瑙掕壊(host:涓绘寔浜�,participant:鍙備細浜�,guest:鍢夊)")
+ private String role;
+
+ /** 鍑哄腑鐘舵��(0:鏈‘璁�,1:宸茬‘璁�,2:宸叉嫆缁�,3:宸插嚭甯�,4:鏈嚭甯�) */
+ @ApiModelProperty("鍑哄腑鐘舵��(0:鏈‘璁�,1:宸茬‘璁�,2:宸叉嫆缁�,3:宸插嚭甯�,4:鏈嚭甯�)")
+ @Excel(name = "鍑哄腑鐘舵��(0:鏈‘璁�,1:宸茬‘璁�,2:宸叉嫆缁�,3:宸插嚭甯�,4:鏈嚭甯�)")
+ private Integer attendanceStatus;
+
+ /** 鏄惁蹇呴渶鍙備細(1:鏄�,0:鍚�) */
+ @ApiModelProperty("鏄惁蹇呴渶鍙備細(1:鏄�,0:鍚�)")
+ @Excel(name = "鏄惁蹇呴渶鍙備細(1:鏄�,0:鍚�)")
+ private Integer isRequired;
+
+ /** 纭鏃堕棿 */
+ @ApiModelProperty("纭鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "纭鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date confirmationTime;
+
+ /** 绛惧埌鏃堕棿 */
+ @ApiModelProperty("绛惧埌鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "绛惧埌鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date checkInTime;
+
+ /** 绛鹃��鏃堕棿 */
+ @ApiModelProperty("绛鹃��鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "绛鹃��鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date checkOutTime;
+
+ /** 鍒涘缓浜� */
+ @ApiModelProperty("鍒涘缓浜�")
+ @Excel(name = "鍒涘缓浜�")
+ private String createdBy;
+
+ /** 鍒涘缓鏃堕棿 */
+ @ApiModelProperty("鍒涘缓鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "鍒涘缓鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date createdTime;
+
+ /** 鏇存柊浜� */
+ @ApiModelProperty("鏇存柊浜�")
+ @Excel(name = "鏇存柊浜�")
+ private String updatedBy;
+
+ /** 鏇存柊鏃堕棿 */
+ @ApiModelProperty("鏇存柊鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "鏇存柊鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date updatedTime;
+
+}
+
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceTrainingRecords.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceTrainingRecords.java
new file mode 100644
index 0000000..0996ca8
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/ServiceTrainingRecords.java
@@ -0,0 +1,150 @@
+package com.ruoyi.project.domain;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * 浜哄憳杩涗慨绠$悊瀵硅薄 service_training_records
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Data
+@ApiModel("浜哄憳杩涗慨绠$悊")
+public class ServiceTrainingRecords extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 璁板綍ID锛堜富閿級 */
+ @ApiModelProperty("璁板綍ID锛堜富閿級")
+ //鏁版嵁搴撹嚜澧炴敼鎴怈TableId(type = IdType.AUTO)
+ @TableId(type = IdType.AUTO)
+ private Long id;
+
+ /** 濮撳悕 */
+ @ApiModelProperty("濮撳悕")
+ @Excel(name = "濮撳悕")
+ private String name;
+
+ /** 鎬у埆 */
+ @ApiModelProperty("鎬у埆")
+ @Excel(name = "鎬у埆")
+ private String sex;
+
+ /** 骞撮緞 */
+ @ApiModelProperty("骞撮緞")
+ @Excel(name = "骞撮緞")
+ private Integer age;
+
+ /** 瀛﹀巻 */
+ @ApiModelProperty("瀛﹀巻")
+ @Excel(name = "瀛﹀巻")
+ private String education;
+
+ /** 杩涗慨绫诲瀷 */
+ @ApiModelProperty("杩涗慨绫诲瀷")
+ @Excel(name = "杩涗慨绫诲瀷")
+ private String trainingType;
+
+ /** 韬唤璇佸彿鐮侊紙鍞竴锛� */
+ @ApiModelProperty("韬唤璇佸彿鐮侊紙鍞竴锛�")
+ @Excel(name = "韬唤璇佸彿鐮�", readConverterExp = "鍞�=涓�")
+ private String idCard;
+
+ /** 姣曚笟闄㈡牎 */
+ @ApiModelProperty("姣曚笟闄㈡牎")
+ @Excel(name = "姣曚笟闄㈡牎")
+ private String graduationSchool;
+
+ /** 鎵�鍦ㄥ崟浣� */
+ @ApiModelProperty("鎵�鍦ㄥ崟浣�")
+ @Excel(name = "鎵�鍦ㄥ崟浣�")
+ private String workUnit;
+
+ /** 鎶�鏈亴绉� */
+ @ApiModelProperty("鎶�鏈亴绉�")
+ @Excel(name = "鎶�鏈亴绉�")
+ private String technicalTitle;
+
+ /** 浠庝簨涓撲笟 */
+ @ApiModelProperty("浠庝簨涓撲笟")
+ @Excel(name = "浠庝簨涓撲笟")
+ private String profession;
+
+ /** 宸ヤ綔骞撮檺锛堝勾锛� */
+ @ApiModelProperty("宸ヤ綔骞撮檺锛堝勾锛�")
+ @Excel(name = "宸ヤ綔骞撮檺", readConverterExp = "骞�=")
+ private BigDecimal workYears;
+
+ /** 杩涗慨鐩爣 */
+ @ApiModelProperty("杩涗慨鐩爣")
+ @Excel(name = "杩涗慨鐩爣")
+ private String trainingGoal;
+
+ /** 杩涗慨寮�濮嬫椂闂� */
+ @ApiModelProperty("杩涗慨寮�濮嬫椂闂�")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "杩涗慨寮�濮嬫椂闂�", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date trainingStartDate;
+
+ /** 杩涗慨缁撴潫鏃堕棿 */
+ @ApiModelProperty("杩涗慨缁撴潫鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "杩涗慨缁撴潫鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date trainingEndDate;
+
+ /** 杩涗慨涓撲笟 */
+ @ApiModelProperty("杩涗慨涓撲笟")
+ @Excel(name = "杩涗慨涓撲笟")
+ private String trainingMajor;
+
+ /** 浠庝簨宸ヤ綔鎯呭喌 */
+ @ApiModelProperty("浠庝簨宸ヤ綔鎯呭喌")
+ @Excel(name = "浠庝簨宸ヤ綔鎯呭喌")
+ private String workSituation;
+
+ /** 鏈鐢宠杩涗慨绉戠洰 */
+ @ApiModelProperty("鏈鐢宠杩涗慨绉戠洰")
+ @Excel(name = "鏈鐢宠杩涗慨绉戠洰")
+ private String applySubject;
+
+ /** 杩涗慨鐩殑瑕佹眰 */
+ @ApiModelProperty("杩涗慨鐩殑瑕佹眰")
+ @Excel(name = "杩涗慨鐩殑瑕佹眰")
+ private String applyPurpose;
+
+ /** 涓昏瀛﹀巻 */
+ @ApiModelProperty("涓昏瀛﹀巻")
+ @Excel(name = "涓昏瀛﹀巻")
+ private String mainEducation;
+
+ /** 涓昏宸ヤ綔缁忓巻 */
+ @ApiModelProperty("涓昏宸ヤ綔缁忓巻")
+ @Excel(name = "涓昏宸ヤ綔缁忓巻")
+ private String mainExperience;
+
+ /** 璁板綍鐘舵�� */
+ @ApiModelProperty("璁板綍鐘舵��")
+ @Excel(name = "璁板綍鐘舵��")
+ private String recordStatus;
+
+ /** 鏄惁涓哄鍒惰褰曪紙0:鍚︼紝1:鏄級 */
+ @ApiModelProperty("鏄惁涓哄鍒惰褰曪紙0:鍚︼紝1:鏄級")
+ @Excel(name = "鏄惁涓哄鍒惰褰�", readConverterExp = "0=:鍚︼紝1:鏄�")
+ private Integer isCopy;
+
+ /** 鍘熻褰旾D锛堝鏋滄槸澶嶅埗璁板綍锛� */
+ @ApiModelProperty("鍘熻褰旾D锛堝鏋滄槸澶嶅埗璁板綍锛�")
+ @Excel(name = "鍘熻褰旾D", readConverterExp = "濡�=鏋滄槸澶嶅埗璁板綍")
+ private Long originalId;
+
+}
+
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/domain/VUserOrg.java b/ruoyi-project/src/main/java/com/ruoyi/project/domain/VUserOrg.java
new file mode 100644
index 0000000..5f8907e
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/domain/VUserOrg.java
@@ -0,0 +1,84 @@
+package com.ruoyi.project.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * VIEW瀵硅薄 v_user_org
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+@Data
+@ApiModel("VIEW")
+public class VUserOrg extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 鐢ㄦ埛ID */
+ @ApiModelProperty("鐢ㄦ埛ID")
+ @Excel(name = "鐢ㄦ埛ID")
+ private Long userId;
+
+ /** 甯愬彿鐘舵�侊紙0姝e父 1鍋滅敤锛� */
+ @ApiModelProperty("甯愬彿鐘舵�侊紙0姝e父 1鍋滅敤锛�")
+ @Excel(name = "甯愬彿鐘舵��", readConverterExp = "0=姝e父,1=鍋滅敤")
+ private String status;
+
+ /** 鐢ㄦ埛璐﹀彿 */
+ @ApiModelProperty("鐢ㄦ埛璐﹀彿")
+ @Excel(name = "鐢ㄦ埛璐﹀彿")
+ private String userName;
+
+ /** 鐢ㄦ埛鏄电О */
+ @ApiModelProperty("鐢ㄦ埛鏄电О")
+ @Excel(name = "鐢ㄦ埛鏄电О")
+ private String nickName;
+
+ /** 鐢ㄦ埛绫诲瀷锛�00绯荤粺鐢ㄦ埛锛� */
+ @ApiModelProperty("鐢ㄦ埛绫诲瀷锛�00绯荤粺鐢ㄦ埛锛�")
+ @Excel(name = "鐢ㄦ埛绫诲瀷", readConverterExp = "0=0绯荤粺鐢ㄦ埛")
+ private String userType;
+
+ /** 鎵嬫満鍙风爜 */
+ @ApiModelProperty("鎵嬫満鍙风爜")
+ @Excel(name = "鎵嬫満鍙风爜")
+ private String phonenumber;
+
+ /** 閮ㄩ棬ID */
+ @ApiModelProperty("閮ㄩ棬ID")
+ @Excel(name = "閮ㄩ棬ID")
+ private Long deptId;
+
+ /** 涓婚敭鑷 */
+ @ApiModelProperty("涓婚敭鑷")
+ @Excel(name = "涓婚敭鑷")
+ private Long orgId;
+
+ /** 缁勭粐缂栧彿 */
+ @ApiModelProperty("缁勭粐缂栧彿")
+ @Excel(name = "缁勭粐缂栧彿")
+ private String organizationid;
+
+ /** 缁勭粐鍚嶇О */
+ @ApiModelProperty("缁勭粐鍚嶇О")
+ @Excel(name = "缁勭粐鍚嶇О")
+ private String organizationname;
+
+ /** 鍗忚皟鍛樼紪鍙� */
+ @ApiModelProperty("鍗忚皟鍛樼紪鍙�")
+ @Excel(name = "鍗忚皟鍛樼紪鍙�")
+ private String coordinatorNo;
+
+ /** 鍗忚皟鍛樺鍚� */
+ @ApiModelProperty("鍗忚皟鍛樺鍚�")
+ @Excel(name = "鍗忚皟鍛樺鍚�")
+ private String coordinatorName;
+
+}
+
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceAttendancerecordsMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceAttendancerecordsMapper.java
new file mode 100644
index 0000000..cc871f7
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceAttendancerecordsMapper.java
@@ -0,0 +1,26 @@
+package com.ruoyi.project.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.project.domain.ServiceAttendancerecords;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 鑰冨嫟璁板綍Mapper鎺ュ彛
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Mapper
+public interface ServiceAttendancerecordsMapper extends BaseMapper<ServiceAttendancerecords>
+{
+ /**
+ * 鏌ヨ鑰冨嫟璁板綍鍒楄〃
+ *
+ * @param serviceAttendancerecords 鑰冨嫟璁板綍
+ * @return 鑰冨嫟璁板綍闆嗗悎
+ */
+ public List<ServiceAttendancerecords> selectServiceAttendancerecordsList(ServiceAttendancerecords serviceAttendancerecords);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonatemaintenanceMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonatemaintenanceMapper.java
new file mode 100644
index 0000000..6c90d23
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceDonatemaintenanceMapper.java
@@ -0,0 +1,25 @@
+package com.ruoyi.project.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.project.domain.ServiceDonatemaintenance;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 渚涗綋缁存姢璁板綍Mapper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+@Mapper
+public interface ServiceDonatemaintenanceMapper extends BaseMapper<ServiceDonatemaintenance> {
+ /**
+ * 鏌ヨ渚涗綋缁存姢璁板綍鍒楄〃
+ *
+ * @param serviceDonatemaintenance 渚涗綋缁存姢璁板綍
+ * @return 渚涗綋缁存姢璁板綍闆嗗悎
+ */
+ public List<ServiceDonatemaintenance> selectServiceDonatemaintenanceList(ServiceDonatemaintenance serviceDonatemaintenance);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceMeetingMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceMeetingMapper.java
new file mode 100644
index 0000000..76cc419
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceMeetingMapper.java
@@ -0,0 +1,25 @@
+package com.ruoyi.project.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import java.util.List;
+import org.apache.ibatis.annotations.Mapper;
+import com.ruoyi.project.domain.ServiceMeeting;
+
+/**
+ * 浼氳绾Mapper鎺ュ彛
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Mapper
+public interface ServiceMeetingMapper extends BaseMapper<ServiceMeeting>
+{
+ /**
+ * 鏌ヨ浼氳绾鍒楄〃
+ *
+ * @param serviceMeeting 浼氳绾
+ * @return 浼氳绾闆嗗悎
+ */
+ public List<ServiceMeeting> selectServiceMeetingList(ServiceMeeting serviceMeeting);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceMeetingParticipantMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceMeetingParticipantMapper.java
new file mode 100644
index 0000000..7d9fd8f
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceMeetingParticipantMapper.java
@@ -0,0 +1,25 @@
+package com.ruoyi.project.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import java.util.List;
+import org.apache.ibatis.annotations.Mapper;
+import com.ruoyi.project.domain.ServiceMeetingParticipant;
+
+/**
+ * 鍙備細浜哄憳Mapper鎺ュ彛
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Mapper
+public interface ServiceMeetingParticipantMapper extends BaseMapper<ServiceMeetingParticipant>
+{
+ /**
+ * 鏌ヨ鍙備細浜哄憳鍒楄〃
+ *
+ * @param serviceMeetingParticipant 鍙備細浜哄憳
+ * @return 鍙備細浜哄憳闆嗗悎
+ */
+ public List<ServiceMeetingParticipant> selectServiceMeetingParticipantList(ServiceMeetingParticipant serviceMeetingParticipant);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceTrainingRecordsMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceTrainingRecordsMapper.java
new file mode 100644
index 0000000..40b8c5a
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/ServiceTrainingRecordsMapper.java
@@ -0,0 +1,25 @@
+package com.ruoyi.project.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import java.util.List;
+import org.apache.ibatis.annotations.Mapper;
+import com.ruoyi.project.domain.ServiceTrainingRecords;
+
+/**
+ * 浜哄憳杩涗慨绠$悊Mapper鎺ュ彛
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Mapper
+public interface ServiceTrainingRecordsMapper extends BaseMapper<ServiceTrainingRecords>
+{
+ /**
+ * 鏌ヨ浜哄憳杩涗慨绠$悊鍒楄〃
+ *
+ * @param serviceTrainingRecords 浜哄憳杩涗慨绠$悊
+ * @return 浜哄憳杩涗慨绠$悊闆嗗悎
+ */
+ public List<ServiceTrainingRecords> selectServiceTrainingRecordsList(ServiceTrainingRecords serviceTrainingRecords);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/mapper/VUserOrgMapper.java b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/VUserOrgMapper.java
new file mode 100644
index 0000000..5b52de4
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/mapper/VUserOrgMapper.java
@@ -0,0 +1,25 @@
+package com.ruoyi.project.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.project.domain.VUserOrg;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * VIEWMapper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+@Mapper
+public interface VUserOrgMapper extends BaseMapper<VUserOrg>
+{
+ /**
+ * 鏌ヨVIEW鍒楄〃
+ *
+ * @param vUserOrg VIEW
+ * @return VIEW闆嗗悎
+ */
+ public List<VUserOrg> selectVUserOrgList(VUserOrg vUserOrg);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceAttendancerecordsService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceAttendancerecordsService.java
new file mode 100644
index 0000000..704b9d2
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceAttendancerecordsService.java
@@ -0,0 +1,23 @@
+package com.ruoyi.project.service;
+
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.project.domain.ServiceAttendancerecords;
+
+/**
+ * 鑰冨嫟璁板綍Service鎺ュ彛
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+public interface IServiceAttendancerecordsService extends IService<ServiceAttendancerecords>
+{
+
+ /**
+ * 鏌ヨ鑰冨嫟璁板綍鍒楄〃
+ *
+ * @param serviceAttendancerecords 鑰冨嫟璁板綍
+ * @return 鑰冨嫟璁板綍闆嗗悎
+ */
+ public List<ServiceAttendancerecords> queryList(ServiceAttendancerecords serviceAttendancerecords);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoReportService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoReportService.java
index b1d23d1..0db5f9f 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoReportService.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatebaseinfoReportService.java
@@ -29,5 +29,10 @@
* @param serviceDonatebaseinfoReport 鎹愮尞涓婃姤鍩虹
* @return 鎹愮尞涓婃姤鍩虹闆嗗悎
*/
- public Map<String,Object> getTotal(ServiceDonatebaseinfoReport serviceDonatebaseinfoReport, String type);
+ public Map<String, Object> getTotal(ServiceDonatebaseinfoReport serviceDonatebaseinfoReport, String type);
+
+ /**
+ * 寤烘。
+ */
+ public Boolean createDocument(ServiceDonatebaseinfoReport serviceDonatebaseinfoReport);
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatemaintenanceService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatemaintenanceService.java
new file mode 100644
index 0000000..bc7bdac
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceDonatemaintenanceService.java
@@ -0,0 +1,24 @@
+package com.ruoyi.project.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.project.domain.ServiceDonatemaintenance;
+
+import java.util.List;
+
+/**
+ * 渚涗綋缁存姢璁板綍Service鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+public interface IServiceDonatemaintenanceService extends IService<ServiceDonatemaintenance>
+{
+
+ /**
+ * 鏌ヨ渚涗綋缁存姢璁板綍鍒楄〃
+ *
+ * @param serviceDonatemaintenance 渚涗綋缁存姢璁板綍
+ * @return 渚涗綋缁存姢璁板綍闆嗗悎
+ */
+ public List<ServiceDonatemaintenance> queryList(ServiceDonatemaintenance serviceDonatemaintenance);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceMeetingParticipantService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceMeetingParticipantService.java
new file mode 100644
index 0000000..fe4bb14
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceMeetingParticipantService.java
@@ -0,0 +1,23 @@
+package com.ruoyi.project.service;
+
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.project.domain.ServiceMeetingParticipant;
+
+/**
+ * 鍙備細浜哄憳Service鎺ュ彛
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+public interface IServiceMeetingParticipantService extends IService<ServiceMeetingParticipant>
+{
+
+ /**
+ * 鏌ヨ鍙備細浜哄憳鍒楄〃
+ *
+ * @param serviceMeetingParticipant 鍙備細浜哄憳
+ * @return 鍙備細浜哄憳闆嗗悎
+ */
+ public List<ServiceMeetingParticipant> queryList(ServiceMeetingParticipant serviceMeetingParticipant);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceMeetingService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceMeetingService.java
new file mode 100644
index 0000000..a1474ce
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceMeetingService.java
@@ -0,0 +1,23 @@
+package com.ruoyi.project.service;
+
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.project.domain.ServiceMeeting;
+
+/**
+ * 浼氳绾Service鎺ュ彛
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+public interface IServiceMeetingService extends IService<ServiceMeeting>
+{
+
+ /**
+ * 鏌ヨ浼氳绾鍒楄〃
+ *
+ * @param serviceMeeting 浼氳绾
+ * @return 浼氳绾闆嗗悎
+ */
+ public List<ServiceMeeting> queryList(ServiceMeeting serviceMeeting);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceTrainingRecordsService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceTrainingRecordsService.java
new file mode 100644
index 0000000..4e3efc3
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IServiceTrainingRecordsService.java
@@ -0,0 +1,23 @@
+package com.ruoyi.project.service;
+
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.project.domain.ServiceTrainingRecords;
+
+/**
+ * 浜哄憳杩涗慨绠$悊Service鎺ュ彛
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+public interface IServiceTrainingRecordsService extends IService<ServiceTrainingRecords>
+{
+
+ /**
+ * 鏌ヨ浜哄憳杩涗慨绠$悊鍒楄〃
+ *
+ * @param serviceTrainingRecords 浜哄憳杩涗慨绠$悊
+ * @return 浜哄憳杩涗慨绠$悊闆嗗悎
+ */
+ public List<ServiceTrainingRecords> queryList(ServiceTrainingRecords serviceTrainingRecords);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/IVUserOrgService.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/IVUserOrgService.java
new file mode 100644
index 0000000..073d377
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/IVUserOrgService.java
@@ -0,0 +1,24 @@
+package com.ruoyi.project.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.project.domain.VUserOrg;
+
+import java.util.List;
+
+/**
+ * VIEWService鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+public interface IVUserOrgService extends IService<VUserOrg>
+{
+
+ /**
+ * 鏌ヨVIEW鍒楄〃
+ *
+ * @param vUserOrg VIEW
+ * @return VIEW闆嗗悎
+ */
+ public List<VUserOrg> queryList(VUserOrg vUserOrg);
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/BaseOrganizationServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/BaseOrganizationServiceImpl.java
index 455b619..6a34f36 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/BaseOrganizationServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/BaseOrganizationServiceImpl.java
@@ -101,6 +101,18 @@
if (StringUtils.isNotBlank(baseOrganization.getCommunity())) {
wrappers.eq(BaseOrganization::getCommunity, baseOrganization.getCommunity());
}
+ if (StringUtils.isNotBlank(baseOrganization.getReporterNo())) {
+ wrappers.eq(BaseOrganization::getReporterNo, baseOrganization.getReporterNo());
+ }
+ if (StringUtils.isNotBlank(baseOrganization.getReporterName())) {
+ wrappers.eq(BaseOrganization::getReporterName, baseOrganization.getReporterName());
+ }
+ if (StringUtils.isNotBlank(baseOrganization.getCoordinatorNo())) {
+ wrappers.eq(BaseOrganization::getCoordinatorNo, baseOrganization.getCoordinatorNo());
+ }
+ if (StringUtils.isNotBlank(baseOrganization.getCoordinatorName())) {
+ wrappers.eq(BaseOrganization::getCoordinatorName, baseOrganization.getCoordinatorName());
+ }
if (StringUtils.isNotBlank(baseOrganization.getCommunityname())) {
wrappers.like(BaseOrganization::getCommunityname, baseOrganization.getCommunityname());
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceAttendancerecordsServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceAttendancerecordsServiceImpl.java
new file mode 100644
index 0000000..26f7fb4
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceAttendancerecordsServiceImpl.java
@@ -0,0 +1,91 @@
+package com.ruoyi.project.service.impl;
+
+import java.util.List;
+import com.ruoyi.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import java.util.ArrayList;
+import java.util.Map;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.project.mapper.ServiceAttendancerecordsMapper;
+import com.ruoyi.project.domain.ServiceAttendancerecords;
+import com.ruoyi.project.service.IServiceAttendancerecordsService;
+
+/**
+ * 鑰冨嫟璁板綍Service涓氬姟灞傚鐞�
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Service
+public class ServiceAttendancerecordsServiceImpl extends ServiceImpl<ServiceAttendancerecordsMapper, ServiceAttendancerecords> implements IServiceAttendancerecordsService
+{
+
+
+ /**
+ * 鏌ヨ鑰冨嫟璁板綍鍒楄〃
+ *
+ * @param serviceAttendancerecords 鑰冨嫟璁板綍
+ * @return 鑰冨嫟璁板綍
+ */
+ @Override
+ public List<ServiceAttendancerecords> queryList(ServiceAttendancerecords serviceAttendancerecords) {
+ LambdaQueryWrapper<ServiceAttendancerecords> wrappers = Wrappers.lambdaQuery();
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getUserNo())){
+ wrappers.eq(ServiceAttendancerecords::getUserNo ,serviceAttendancerecords.getUserNo());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getUserName())){
+ wrappers.like(ServiceAttendancerecords::getUserName ,serviceAttendancerecords.getUserName());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getDeptNo())){
+ wrappers.eq(ServiceAttendancerecords::getDeptNo ,serviceAttendancerecords.getDeptNo());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getDeptName())){
+ wrappers.like(ServiceAttendancerecords::getDeptName ,serviceAttendancerecords.getDeptName());
+ }
+ if (serviceAttendancerecords.getAttendanceDate() != null){
+ wrappers.eq(ServiceAttendancerecords::getAttendanceDate ,serviceAttendancerecords.getAttendanceDate());
+ }
+ if (serviceAttendancerecords.getClockInTime() != null){
+ wrappers.eq(ServiceAttendancerecords::getClockInTime ,serviceAttendancerecords.getClockInTime());
+ }
+ if (serviceAttendancerecords.getClockOutTime() != null){
+ wrappers.eq(ServiceAttendancerecords::getClockOutTime ,serviceAttendancerecords.getClockOutTime());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getAttendanceStatus())){
+ wrappers.eq(ServiceAttendancerecords::getAttendanceStatus ,serviceAttendancerecords.getAttendanceStatus());
+ }
+ if (serviceAttendancerecords.getWorkHoursMinutes() != null){
+ wrappers.eq(ServiceAttendancerecords::getWorkHoursMinutes ,serviceAttendancerecords.getWorkHoursMinutes());
+ }
+ if (serviceAttendancerecords.getOvertimeMinutes() != null){
+ wrappers.eq(ServiceAttendancerecords::getOvertimeMinutes ,serviceAttendancerecords.getOvertimeMinutes());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getReason())){
+ wrappers.eq(ServiceAttendancerecords::getReason ,serviceAttendancerecords.getReason());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getAbnormalReason())){
+ wrappers.eq(ServiceAttendancerecords::getAbnormalReason ,serviceAttendancerecords.getAbnormalReason());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getClockInMethod())){
+ wrappers.eq(ServiceAttendancerecords::getClockInMethod ,serviceAttendancerecords.getClockInMethod());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getClockOutMethod())){
+ wrappers.eq(ServiceAttendancerecords::getClockOutMethod ,serviceAttendancerecords.getClockOutMethod());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getClockInLocation())){
+ wrappers.eq(ServiceAttendancerecords::getClockInLocation ,serviceAttendancerecords.getClockInLocation());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getClockOutLocation())){
+ wrappers.eq(ServiceAttendancerecords::getClockOutLocation ,serviceAttendancerecords.getClockOutLocation());
+ }
+ if (StringUtils.isNotBlank(serviceAttendancerecords.getDataSource())){
+ wrappers.eq(ServiceAttendancerecords::getDataSource ,serviceAttendancerecords.getDataSource());
+ }
+ return this.list(wrappers);
+ }
+
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java
index 60f40e7..fb10d55 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoReportServiceImpl.java
@@ -5,14 +5,18 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.bean.DtoConversionUtils;
import com.ruoyi.project.common.CalculateDateUtils;
+import com.ruoyi.project.domain.ServiceDonatebaseinfo;
import com.ruoyi.project.domain.ServiceDonatebaseinfoReport;
import com.ruoyi.project.domain.ServiceDonatebaseinfoReportFile;
import com.ruoyi.project.domain.ServiceTransport;
import com.ruoyi.project.mapper.ServiceDonatebaseinfoReportMapper;
import com.ruoyi.project.service.IServiceDonatebaseinfoReportFileService;
import com.ruoyi.project.service.IServiceDonatebaseinfoReportService;
+import com.ruoyi.project.service.IServiceDonatebaseinfoService;
import com.ruoyi.project.service.IServiceTransportService;
+import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -35,9 +39,10 @@
private IServiceDonatebaseinfoReportFileService serviceDonatebaseinfoReportFileService;
@Autowired
private IServiceTransportService serviceTransportService;
-
@Autowired
private ServiceDonatebaseinfoReportMapper serviceDonatebaseinfoReportMapper;
+ @Autowired
+ private IServiceDonatebaseinfoService serviceDonatebaseinfoService;
/**
* 鏌ヨ鎹愮尞涓婃姤鍩虹鍒楄〃
@@ -48,6 +53,11 @@
@Override
public Page<ServiceDonatebaseinfoReport> queryList(ServiceDonatebaseinfoReport serviceDonatebaseinfoReport) {
LambdaQueryWrapper<ServiceDonatebaseinfoReport> wrappers = getWrapper(serviceDonatebaseinfoReport);
+ // 娣诲姞create_time涓嶄负绌虹殑鏉′欢
+ wrappers.isNotNull(ServiceDonatebaseinfoReport::getCreateTime);
+ // 鐒跺悗杩涜鍊掑簭鎺掑簭
+ wrappers.orderByDesc(ServiceDonatebaseinfoReport::getCreateTime);
+
// 鍒涘缓鍒嗛〉瀵硅薄锛岃缃〉鐮佸拰姣忛〉澶у皬
int currentPage = (serviceDonatebaseinfoReport.getPageNum() == null || serviceDonatebaseinfoReport.getPageNum() < 1) ? 1 : serviceDonatebaseinfoReport.getPageNum();
int size = (serviceDonatebaseinfoReport.getPageSize() == null || serviceDonatebaseinfoReport.getPageSize() < 1) ? 10 : serviceDonatebaseinfoReport.getPageSize();
@@ -101,6 +111,30 @@
//鎵�鏈夌姸鎬佺殑鎬绘暟
map.put("all", all);
return map;
+ }
+
+ /**
+ * 鍒涘缓妗f
+ *
+ * @param serviceDonatebaseinfoReport
+ * @return
+ */
+ @Override
+ public Boolean createDocument(ServiceDonatebaseinfoReport serviceDonatebaseinfoReport) {
+ //灏唕eport鏁版嵁澶嶅埗鍒皊erviceDonatebaseinfo涓�
+ ServiceDonatebaseinfo serviceDonatebaseinfo1 = DtoConversionUtils.sourceToTarget(serviceDonatebaseinfoReport, ServiceDonatebaseinfo.class);
+ serviceDonatebaseinfo1.setId(null);
+ //鍏堥�氳繃caseNo鏌ヨ鏄惁瀛樺湪
+ ServiceDonatebaseinfo serviceDonatebaseinfo = new ServiceDonatebaseinfo();
+ serviceDonatebaseinfo.setCaseNo(serviceDonatebaseinfoReport.getCaseNo());
+ List<ServiceDonatebaseinfo> serviceDonatebaseinfos = serviceDonatebaseinfoService.queryList(serviceDonatebaseinfo);
+ if (CollectionUtils.isNotEmpty(serviceDonatebaseinfos) && serviceDonatebaseinfos.size() > 0) {
+ serviceDonatebaseinfo1.setId(serviceDonatebaseinfos.get(0).getId());
+ serviceDonatebaseinfoService.updateById(serviceDonatebaseinfo1);
+ return true;
+ }
+ //鍒涘缓
+ return serviceDonatebaseinfoService.save(serviceDonatebaseinfo1);
}
private LambdaQueryWrapper<ServiceDonatebaseinfoReport> getWrapper(ServiceDonatebaseinfoReport serviceDonatebaseinfoReport) {
@@ -216,11 +250,11 @@
if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getPatientstate())) {
wrappers.eq(ServiceDonatebaseinfoReport::getPatientstate, serviceDonatebaseinfoReport.getPatientstate());
}
- if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getReporterno())) {
- wrappers.eq(ServiceDonatebaseinfoReport::getReporterno, serviceDonatebaseinfoReport.getReporterno());
+ if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getInfoNo())) {
+ wrappers.eq(ServiceDonatebaseinfoReport::getInfoNo, serviceDonatebaseinfoReport.getInfoNo());
}
- if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getReportername())) {
- wrappers.like(ServiceDonatebaseinfoReport::getReportername, serviceDonatebaseinfoReport.getReportername());
+ if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getInfoName())) {
+ wrappers.like(ServiceDonatebaseinfoReport::getInfoName, serviceDonatebaseinfoReport.getInfoName());
}
if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getReporterphone())) {
wrappers.eq(ServiceDonatebaseinfoReport::getReporterphone, serviceDonatebaseinfoReport.getReporterphone());
@@ -231,12 +265,6 @@
if (serviceDonatebaseinfoReport.getTerminationCase() != null) {
wrappers.eq(ServiceDonatebaseinfoReport::getTerminationCase, serviceDonatebaseinfoReport.getTerminationCase());
}
- if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getUserNo())) {
- wrappers.eq(ServiceDonatebaseinfoReport::getUserNo, serviceDonatebaseinfoReport.getUserNo());
- }
- if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getUserName())) {
- wrappers.eq(ServiceDonatebaseinfoReport::getUserName, serviceDonatebaseinfoReport.getUserName());
- }
if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getDeptNo())) {
wrappers.eq(ServiceDonatebaseinfoReport::getDeptNo, serviceDonatebaseinfoReport.getDeptNo());
}
@@ -246,9 +274,22 @@
if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getIsTransport())) {
wrappers.eq(ServiceDonatebaseinfoReport::getIsTransport, serviceDonatebaseinfoReport.getIsTransport());
}
- if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getGscScore())) {
- wrappers.eq(ServiceDonatebaseinfoReport::getGscScore, serviceDonatebaseinfoReport.getGscScore());
+ if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getGcsScore())) {
+ wrappers.eq(ServiceDonatebaseinfoReport::getGcsScore, serviceDonatebaseinfoReport.getGcsScore());
}
+ if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getRhYin())) {
+ wrappers.eq(ServiceDonatebaseinfoReport::getRhYin, serviceDonatebaseinfoReport.getRhYin());
+ }
+ if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getBloodType())) {
+ wrappers.eq(ServiceDonatebaseinfoReport::getBloodType, serviceDonatebaseinfoReport.getBloodType());
+ }
+ if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getCoordinatorName())) {
+ wrappers.like(ServiceDonatebaseinfoReport::getCoordinatorName, serviceDonatebaseinfoReport.getCoordinatorName());
+ }
+ if (StringUtils.isNotBlank(serviceDonatebaseinfoReport.getCoordinatorNo())) {
+ wrappers.eq(ServiceDonatebaseinfoReport::getCoordinatorNo, serviceDonatebaseinfoReport.getCoordinatorNo());
+ }
+
return wrappers;
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java
index c1b89d7..a839871 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatebaseinfoServiceImpl.java
@@ -114,7 +114,22 @@
wrappers.like(ServiceDonatebaseinfo::getReportername, serviceDonatebaseinfo.getReportername());
}
if (StringUtils.isNotBlank(serviceDonatebaseinfo.getCaseNo())) {
- wrappers.like(ServiceDonatebaseinfo::getCaseNo, serviceDonatebaseinfo.getCaseNo());
+ wrappers.eq(ServiceDonatebaseinfo::getCaseNo, serviceDonatebaseinfo.getCaseNo());
+ }
+ if (StringUtils.isNotBlank(serviceDonatebaseinfo.getInfoName())) {
+ wrappers.like(ServiceDonatebaseinfo::getInfoName, serviceDonatebaseinfo.getInfoName());
+ }
+ if (StringUtils.isNotBlank(serviceDonatebaseinfo.getInfoNo())) {
+ wrappers.eq(ServiceDonatebaseinfo::getInfoNo, serviceDonatebaseinfo.getInfoNo());
+ }
+ if (StringUtils.isNotBlank(serviceDonatebaseinfo.getCoordinatorName())) {
+ wrappers.like(ServiceDonatebaseinfo::getCoordinatorName, serviceDonatebaseinfo.getCoordinatorName());
+ }
+ if (StringUtils.isNotBlank(serviceDonatebaseinfo.getCoordinatorNo())) {
+ wrappers.eq(ServiceDonatebaseinfo::getCoordinatorNo, serviceDonatebaseinfo.getCoordinatorNo());
+ }
+ if (StringUtils.isNotBlank(serviceDonatebaseinfo.getGcsScore())) {
+ wrappers.eq(ServiceDonatebaseinfo::getGcsScore, serviceDonatebaseinfo.getGcsScore());
}
Map<String, Object> params = serviceDonatebaseinfo.getParams();
if (params.get("beginReporttime") != null && params.get("endReporttime") != null) {
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatemaintenanceServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatemaintenanceServiceImpl.java
new file mode 100644
index 0000000..23cde40
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceDonatemaintenanceServiceImpl.java
@@ -0,0 +1,58 @@
+package com.ruoyi.project.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.project.domain.ServiceDonatemaintenance;
+import com.ruoyi.project.mapper.ServiceDonatemaintenanceMapper;
+import com.ruoyi.project.service.IServiceDonatemaintenanceService;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 渚涗綋缁存姢璁板綍Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+@Service
+public class ServiceDonatemaintenanceServiceImpl extends ServiceImpl<ServiceDonatemaintenanceMapper, ServiceDonatemaintenance> implements IServiceDonatemaintenanceService
+{
+
+
+ /**
+ * 鏌ヨ渚涗綋缁存姢璁板綍鍒楄〃
+ *
+ * @param serviceDonatemaintenance 渚涗綋缁存姢璁板綍
+ * @return 渚涗綋缁存姢璁板綍
+ */
+ @Override
+ public List<ServiceDonatemaintenance> queryList(ServiceDonatemaintenance serviceDonatemaintenance) {
+ LambdaQueryWrapper<ServiceDonatemaintenance> wrappers = Wrappers.lambdaQuery();
+ if (serviceDonatemaintenance.getInfoid() != null){
+ wrappers.eq(ServiceDonatemaintenance::getInfoid ,serviceDonatemaintenance.getInfoid());
+ }
+ if (StringUtils.isNotBlank(serviceDonatemaintenance.getCaseNo())){
+ wrappers.eq(ServiceDonatemaintenance::getCaseNo ,serviceDonatemaintenance.getCaseNo());
+ }
+ if (StringUtils.isNotBlank(serviceDonatemaintenance.getDonorno())){
+ wrappers.eq(ServiceDonatemaintenance::getDonorno ,serviceDonatemaintenance.getDonorno());
+ }
+ if (StringUtils.isNotBlank(serviceDonatemaintenance.getItemNo())){
+ wrappers.eq(ServiceDonatemaintenance::getItemNo ,serviceDonatemaintenance.getItemNo());
+ }
+ if (StringUtils.isNotBlank(serviceDonatemaintenance.getItemName())){
+ wrappers.like(ServiceDonatemaintenance::getItemName ,serviceDonatemaintenance.getItemName());
+ }
+ if (serviceDonatemaintenance.getItemTime() != null){
+ wrappers.eq(ServiceDonatemaintenance::getItemTime ,serviceDonatemaintenance.getItemTime());
+ }
+ if (StringUtils.isNotBlank(serviceDonatemaintenance.getItemDesc())){
+ wrappers.eq(ServiceDonatemaintenance::getItemDesc ,serviceDonatemaintenance.getItemDesc());
+ }
+ return this.list(wrappers);
+ }
+
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceEthicalreviewinitiateServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceEthicalreviewinitiateServiceImpl.java
index 52543f2..aa1561b 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceEthicalreviewinitiateServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceEthicalreviewinitiateServiceImpl.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.project.domain.ServiceDonatebaseinfoReport;
import com.ruoyi.project.domain.ServiceEthicalreviewinitiate;
import com.ruoyi.project.mapper.ServiceEthicalreviewinitiateMapper;
import com.ruoyi.project.service.IServiceEthicalreviewinitiateService;
@@ -30,6 +31,11 @@
@Override
public List<ServiceEthicalreviewinitiate> queryList(ServiceEthicalreviewinitiate serviceEthicalreviewinitiate) {
LambdaQueryWrapper<ServiceEthicalreviewinitiate> wrappers = Wrappers.lambdaQuery();
+ // 娣诲姞create_time涓嶄负绌虹殑鏉′欢
+ wrappers.isNotNull(ServiceEthicalreviewinitiate::getCreateTime);
+ // 鐒跺悗杩涜鍊掑簭鎺掑簭
+ wrappers.orderByDesc(ServiceEthicalreviewinitiate::getCreateTime);
+
if (serviceEthicalreviewinitiate.getInfoid() != null) {
wrappers.eq(ServiceEthicalreviewinitiate::getInfoid, serviceEthicalreviewinitiate.getInfoid());
}
@@ -51,6 +57,30 @@
if (serviceEthicalreviewinitiate.getCutOffTime() != null) {
wrappers.eq(ServiceEthicalreviewinitiate::getCutOffTime, serviceEthicalreviewinitiate.getCutOffTime());
}
+ if (serviceEthicalreviewinitiate.getOrderNo() != null) {
+ wrappers.eq(ServiceEthicalreviewinitiate::getOrderNo, serviceEthicalreviewinitiate.getOrderNo());
+ }
+ if (serviceEthicalreviewinitiate.getExpertConclusion() != null) {
+ wrappers.eq(ServiceEthicalreviewinitiate::getExpertConclusion, serviceEthicalreviewinitiate.getExpertConclusion());
+ }
+ if (serviceEthicalreviewinitiate.getExpertOpinion() != null) {
+ wrappers.eq(ServiceEthicalreviewinitiate::getExpertOpinion, serviceEthicalreviewinitiate.getExpertOpinion());
+ }
+ if (serviceEthicalreviewinitiate.getExpertNo() != null) {
+ wrappers.eq(ServiceEthicalreviewinitiate::getExpertNo, serviceEthicalreviewinitiate.getExpertNo());
+ }
+ if (serviceEthicalreviewinitiate.getExpertName() != null) {
+ wrappers.eq(ServiceEthicalreviewinitiate::getExpertName, serviceEthicalreviewinitiate.getExpertName());
+ }
+ if (serviceEthicalreviewinitiate.getExpertType() != null) {
+ wrappers.eq(ServiceEthicalreviewinitiate::getExpertType, serviceEthicalreviewinitiate.getExpertType());
+ }
+ if (serviceEthicalreviewinitiate.getExpertTime() != null) {
+ wrappers.eq(ServiceEthicalreviewinitiate::getExpertTime, serviceEthicalreviewinitiate.getExpertTime());
+ }
+ if (serviceEthicalreviewinitiate.getStatus() != null) {
+ wrappers.eq(ServiceEthicalreviewinitiate::getStatus, serviceEthicalreviewinitiate.getStatus());
+ }
return this.list(wrappers);
}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMeetingParticipantServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMeetingParticipantServiceImpl.java
new file mode 100644
index 0000000..80954c6
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMeetingParticipantServiceImpl.java
@@ -0,0 +1,78 @@
+package com.ruoyi.project.service.impl;
+
+import java.util.List;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import java.util.ArrayList;
+import java.util.Map;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.project.mapper.ServiceMeetingParticipantMapper;
+import com.ruoyi.project.domain.ServiceMeetingParticipant;
+import com.ruoyi.project.service.IServiceMeetingParticipantService;
+
+/**
+ * 鍙備細浜哄憳Service涓氬姟灞傚鐞�
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Service
+public class ServiceMeetingParticipantServiceImpl extends ServiceImpl<ServiceMeetingParticipantMapper, ServiceMeetingParticipant> implements IServiceMeetingParticipantService
+{
+
+
+ /**
+ * 鏌ヨ鍙備細浜哄憳鍒楄〃
+ *
+ * @param serviceMeetingParticipant 鍙備細浜哄憳
+ * @return 鍙備細浜哄憳
+ */
+ @Override
+ public List<ServiceMeetingParticipant> queryList(ServiceMeetingParticipant serviceMeetingParticipant) {
+ LambdaQueryWrapper<ServiceMeetingParticipant> wrappers = Wrappers.lambdaQuery();
+ if (serviceMeetingParticipant.getMeetingId() != null){
+ wrappers.eq(ServiceMeetingParticipant::getMeetingId ,serviceMeetingParticipant.getMeetingId());
+ }
+ if (StringUtils.isNotBlank(serviceMeetingParticipant.getUserNo())){
+ wrappers.eq(ServiceMeetingParticipant::getUserNo ,serviceMeetingParticipant.getUserNo());
+ }
+ if (StringUtils.isNotBlank(serviceMeetingParticipant.getUserName())){
+ wrappers.like(ServiceMeetingParticipant::getUserName ,serviceMeetingParticipant.getUserName());
+ }
+ if (StringUtils.isNotBlank(serviceMeetingParticipant.getRole())){
+ wrappers.eq(ServiceMeetingParticipant::getRole ,serviceMeetingParticipant.getRole());
+ }
+ if (serviceMeetingParticipant.getAttendanceStatus() != null){
+ wrappers.eq(ServiceMeetingParticipant::getAttendanceStatus ,serviceMeetingParticipant.getAttendanceStatus());
+ }
+ if (serviceMeetingParticipant.getIsRequired() != null){
+ wrappers.eq(ServiceMeetingParticipant::getIsRequired ,serviceMeetingParticipant.getIsRequired());
+ }
+ if (serviceMeetingParticipant.getConfirmationTime() != null){
+ wrappers.eq(ServiceMeetingParticipant::getConfirmationTime ,serviceMeetingParticipant.getConfirmationTime());
+ }
+ if (serviceMeetingParticipant.getCheckInTime() != null){
+ wrappers.eq(ServiceMeetingParticipant::getCheckInTime ,serviceMeetingParticipant.getCheckInTime());
+ }
+ if (serviceMeetingParticipant.getCheckOutTime() != null){
+ wrappers.eq(ServiceMeetingParticipant::getCheckOutTime ,serviceMeetingParticipant.getCheckOutTime());
+ }
+ if (StringUtils.isNotBlank(serviceMeetingParticipant.getCreatedBy())){
+ wrappers.eq(ServiceMeetingParticipant::getCreatedBy ,serviceMeetingParticipant.getCreatedBy());
+ }
+ if (serviceMeetingParticipant.getCreatedTime() != null){
+ wrappers.eq(ServiceMeetingParticipant::getCreatedTime ,serviceMeetingParticipant.getCreatedTime());
+ }
+ if (StringUtils.isNotBlank(serviceMeetingParticipant.getUpdatedBy())){
+ wrappers.eq(ServiceMeetingParticipant::getUpdatedBy ,serviceMeetingParticipant.getUpdatedBy());
+ }
+ if (serviceMeetingParticipant.getUpdatedTime() != null){
+ wrappers.eq(ServiceMeetingParticipant::getUpdatedTime ,serviceMeetingParticipant.getUpdatedTime());
+ }
+ return this.list(wrappers);
+ }
+
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMeetingServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMeetingServiceImpl.java
new file mode 100644
index 0000000..6513d0b
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceMeetingServiceImpl.java
@@ -0,0 +1,117 @@
+package com.ruoyi.project.service.impl;
+
+import java.util.List;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import java.util.ArrayList;
+import java.util.Map;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.project.mapper.ServiceMeetingMapper;
+import com.ruoyi.project.domain.ServiceMeeting;
+import com.ruoyi.project.service.IServiceMeetingService;
+
+/**
+ * 浼氳绾Service涓氬姟灞傚鐞�
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Service
+public class ServiceMeetingServiceImpl extends ServiceImpl<ServiceMeetingMapper, ServiceMeeting> implements IServiceMeetingService
+{
+
+
+ /**
+ * 鏌ヨ浼氳绾鍒楄〃
+ *
+ * @param serviceMeeting 浼氳绾
+ * @return 浼氳绾
+ */
+ @Override
+ public List<ServiceMeeting> queryList(ServiceMeeting serviceMeeting) {
+ LambdaQueryWrapper<ServiceMeeting> wrappers = Wrappers.lambdaQuery();
+ if (StringUtils.isNotBlank(serviceMeeting.getMeetingNumber())){
+ wrappers.eq(ServiceMeeting::getMeetingNumber ,serviceMeeting.getMeetingNumber());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getTitle())){
+ wrappers.eq(ServiceMeeting::getTitle ,serviceMeeting.getTitle());
+ }
+ if (serviceMeeting.getTypeId() != null){
+ wrappers.eq(ServiceMeeting::getTypeId ,serviceMeeting.getTypeId());
+ }
+ if (serviceMeeting.getLocationId() != null){
+ wrappers.eq(ServiceMeeting::getLocationId ,serviceMeeting.getLocationId());
+ }
+ if (serviceMeeting.getOrganizerId() != null){
+ wrappers.eq(ServiceMeeting::getOrganizerId ,serviceMeeting.getOrganizerId());
+ }
+ if (serviceMeeting.getStartTime() != null){
+ wrappers.eq(ServiceMeeting::getStartTime ,serviceMeeting.getStartTime());
+ }
+ if (serviceMeeting.getEndTime() != null){
+ wrappers.eq(ServiceMeeting::getEndTime ,serviceMeeting.getEndTime());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getSummary())){
+ wrappers.eq(ServiceMeeting::getSummary ,serviceMeeting.getSummary());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getContent())){
+ wrappers.eq(ServiceMeeting::getContent ,serviceMeeting.getContent());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getAttachment())){
+ wrappers.eq(ServiceMeeting::getAttachment ,serviceMeeting.getAttachment());
+ }
+ if (serviceMeeting.getStatus() != null){
+ wrappers.eq(ServiceMeeting::getStatus ,serviceMeeting.getStatus());
+ }
+ if (serviceMeeting.getIsRecurring() != null){
+ wrappers.eq(ServiceMeeting::getIsRecurring ,serviceMeeting.getIsRecurring());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getRecurringPattern())){
+ wrappers.eq(ServiceMeeting::getRecurringPattern ,serviceMeeting.getRecurringPattern());
+ }
+ if (serviceMeeting.getParentMeetingId() != null){
+ wrappers.eq(ServiceMeeting::getParentMeetingId ,serviceMeeting.getParentMeetingId());
+ }
+ if (serviceMeeting.getReminderMinutes() != null){
+ wrappers.eq(ServiceMeeting::getReminderMinutes ,serviceMeeting.getReminderMinutes());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getRecordcontent())){
+ wrappers.eq(ServiceMeeting::getRecordcontent ,serviceMeeting.getRecordcontent());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getRecordattachment())){
+ wrappers.eq(ServiceMeeting::getRecordattachment ,serviceMeeting.getRecordattachment());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getRecorderBy())){
+ wrappers.eq(ServiceMeeting::getRecorderBy ,serviceMeeting.getRecorderBy());
+ }
+ if (serviceMeeting.getRecorderTime() != null){
+ wrappers.eq(ServiceMeeting::getRecorderTime ,serviceMeeting.getRecorderTime());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getApproverBy())){
+ wrappers.eq(ServiceMeeting::getApproverBy ,serviceMeeting.getApproverBy());
+ }
+ if (serviceMeeting.getApprovalStatus() != null){
+ wrappers.eq(ServiceMeeting::getApprovalStatus ,serviceMeeting.getApprovalStatus());
+ }
+ if (serviceMeeting.getApprovalTime() != null){
+ wrappers.eq(ServiceMeeting::getApprovalTime ,serviceMeeting.getApprovalTime());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getCreatedBy())){
+ wrappers.eq(ServiceMeeting::getCreatedBy ,serviceMeeting.getCreatedBy());
+ }
+ if (serviceMeeting.getCreatedTime() != null){
+ wrappers.eq(ServiceMeeting::getCreatedTime ,serviceMeeting.getCreatedTime());
+ }
+ if (StringUtils.isNotBlank(serviceMeeting.getUpdatedBy())){
+ wrappers.eq(ServiceMeeting::getUpdatedBy ,serviceMeeting.getUpdatedBy());
+ }
+ if (serviceMeeting.getUpdatedTime() != null){
+ wrappers.eq(ServiceMeeting::getUpdatedTime ,serviceMeeting.getUpdatedTime());
+ }
+ return this.list(wrappers);
+ }
+
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTrainingRecordsServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTrainingRecordsServiceImpl.java
new file mode 100644
index 0000000..fabced2
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTrainingRecordsServiceImpl.java
@@ -0,0 +1,109 @@
+package com.ruoyi.project.service.impl;
+
+import java.util.List;
+import com.ruoyi.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import java.util.ArrayList;
+import java.util.Map;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.project.mapper.ServiceTrainingRecordsMapper;
+import com.ruoyi.project.domain.ServiceTrainingRecords;
+import com.ruoyi.project.service.IServiceTrainingRecordsService;
+
+/**
+ * 浜哄憳杩涗慨绠$悊Service涓氬姟灞傚鐞�
+ *
+ * @author ls
+ * @date 2025-12-28
+ */
+@Service
+public class ServiceTrainingRecordsServiceImpl extends ServiceImpl<ServiceTrainingRecordsMapper, ServiceTrainingRecords> implements IServiceTrainingRecordsService
+{
+
+
+ /**
+ * 鏌ヨ浜哄憳杩涗慨绠$悊鍒楄〃
+ *
+ * @param serviceTrainingRecords 浜哄憳杩涗慨绠$悊
+ * @return 浜哄憳杩涗慨绠$悊
+ */
+ @Override
+ public List<ServiceTrainingRecords> queryList(ServiceTrainingRecords serviceTrainingRecords) {
+ LambdaQueryWrapper<ServiceTrainingRecords> wrappers = Wrappers.lambdaQuery();
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getName())){
+ wrappers.like(ServiceTrainingRecords::getName ,serviceTrainingRecords.getName());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getSex())){
+ wrappers.eq(ServiceTrainingRecords::getSex ,serviceTrainingRecords.getSex());
+ }
+ if (serviceTrainingRecords.getAge() != null){
+ wrappers.eq(ServiceTrainingRecords::getAge ,serviceTrainingRecords.getAge());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getEducation())){
+ wrappers.eq(ServiceTrainingRecords::getEducation ,serviceTrainingRecords.getEducation());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getTrainingType())){
+ wrappers.eq(ServiceTrainingRecords::getTrainingType ,serviceTrainingRecords.getTrainingType());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getIdCard())){
+ wrappers.eq(ServiceTrainingRecords::getIdCard ,serviceTrainingRecords.getIdCard());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getGraduationSchool())){
+ wrappers.eq(ServiceTrainingRecords::getGraduationSchool ,serviceTrainingRecords.getGraduationSchool());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getWorkUnit())){
+ wrappers.eq(ServiceTrainingRecords::getWorkUnit ,serviceTrainingRecords.getWorkUnit());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getTechnicalTitle())){
+ wrappers.eq(ServiceTrainingRecords::getTechnicalTitle ,serviceTrainingRecords.getTechnicalTitle());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getProfession())){
+ wrappers.eq(ServiceTrainingRecords::getProfession ,serviceTrainingRecords.getProfession());
+ }
+ if (serviceTrainingRecords.getWorkYears() != null){
+ wrappers.eq(ServiceTrainingRecords::getWorkYears ,serviceTrainingRecords.getWorkYears());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getTrainingGoal())){
+ wrappers.eq(ServiceTrainingRecords::getTrainingGoal ,serviceTrainingRecords.getTrainingGoal());
+ }
+ if (serviceTrainingRecords.getTrainingStartDate() != null){
+ wrappers.eq(ServiceTrainingRecords::getTrainingStartDate ,serviceTrainingRecords.getTrainingStartDate());
+ }
+ if (serviceTrainingRecords.getTrainingEndDate() != null){
+ wrappers.eq(ServiceTrainingRecords::getTrainingEndDate ,serviceTrainingRecords.getTrainingEndDate());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getTrainingMajor())){
+ wrappers.eq(ServiceTrainingRecords::getTrainingMajor ,serviceTrainingRecords.getTrainingMajor());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getWorkSituation())){
+ wrappers.eq(ServiceTrainingRecords::getWorkSituation ,serviceTrainingRecords.getWorkSituation());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getApplySubject())){
+ wrappers.eq(ServiceTrainingRecords::getApplySubject ,serviceTrainingRecords.getApplySubject());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getApplyPurpose())){
+ wrappers.eq(ServiceTrainingRecords::getApplyPurpose ,serviceTrainingRecords.getApplyPurpose());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getMainEducation())){
+ wrappers.eq(ServiceTrainingRecords::getMainEducation ,serviceTrainingRecords.getMainEducation());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getMainExperience())){
+ wrappers.eq(ServiceTrainingRecords::getMainExperience ,serviceTrainingRecords.getMainExperience());
+ }
+ if (StringUtils.isNotBlank(serviceTrainingRecords.getRecordStatus())){
+ wrappers.eq(ServiceTrainingRecords::getRecordStatus ,serviceTrainingRecords.getRecordStatus());
+ }
+ if (serviceTrainingRecords.getIsCopy() != null){
+ wrappers.eq(ServiceTrainingRecords::getIsCopy ,serviceTrainingRecords.getIsCopy());
+ }
+ if (serviceTrainingRecords.getOriginalId() != null){
+ wrappers.eq(ServiceTrainingRecords::getOriginalId ,serviceTrainingRecords.getOriginalId());
+ }
+ return this.list(wrappers);
+ }
+
+}
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTransportServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTransportServiceImpl.java
index e6268d1..c666474 100644
--- a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTransportServiceImpl.java
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/ServiceTransportServiceImpl.java
@@ -6,10 +6,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.project.domain.ServiceDonatebaseinfoReport;
-import com.ruoyi.project.domain.ServiceDonatebaseinfoReportFile;
-import com.ruoyi.project.domain.ServiceTransport;
-import com.ruoyi.project.domain.ServiceTransportFile;
+import com.ruoyi.project.domain.*;
import com.ruoyi.project.mapper.ServiceTransportMapper;
import com.ruoyi.project.service.IServiceTransportFileService;
import com.ruoyi.project.service.IServiceTransportService;
@@ -43,6 +40,10 @@
@Override
public Page<ServiceTransport> queryList(ServiceTransport serviceTransport) {
LambdaQueryWrapper<ServiceTransport> wrappers = getWrappers(serviceTransport);
+ // 娣诲姞create_time涓嶄负绌虹殑鏉′欢
+ wrappers.isNotNull(ServiceTransport::getCreateTime);
+ // 鐒跺悗杩涜鍊掑簭鎺掑簭
+ wrappers.orderByDesc(ServiceTransport::getCreateTime);
// 鍒涘缓鍒嗛〉瀵硅薄锛岃缃〉鐮佸拰姣忛〉澶у皬
int currentPage = (serviceTransport.getPageNum() == null || serviceTransport.getPageNum() < 1) ? 1 : serviceTransport.getPageNum();
int size = (serviceTransport.getPageSize() == null || serviceTransport.getPageSize() < 1) ? 10 : serviceTransport.getPageSize();
diff --git a/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VUserOrgServiceImpl.java b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VUserOrgServiceImpl.java
new file mode 100644
index 0000000..6d01a6f
--- /dev/null
+++ b/ruoyi-project/src/main/java/com/ruoyi/project/service/impl/VUserOrgServiceImpl.java
@@ -0,0 +1,72 @@
+package com.ruoyi.project.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.project.domain.VUserOrg;
+import com.ruoyi.project.mapper.VUserOrgMapper;
+import com.ruoyi.project.service.IVUserOrgService;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * VIEWService涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2025-12-27
+ */
+@Service
+public class VUserOrgServiceImpl extends ServiceImpl<VUserOrgMapper, VUserOrg> implements IVUserOrgService {
+
+
+ /**
+ * 鏌ヨVIEW鍒楄〃
+ *
+ * @param vUserOrg VIEW
+ * @return VIEW
+ */
+ @Override
+ public List<VUserOrg> queryList(VUserOrg vUserOrg) {
+ LambdaQueryWrapper<VUserOrg> wrappers = Wrappers.lambdaQuery();
+ if (vUserOrg.getUserId() != null) {
+ wrappers.eq(VUserOrg::getUserId, vUserOrg.getUserId());
+ }
+ if (StringUtils.isNotBlank(vUserOrg.getStatus())) {
+ wrappers.eq(VUserOrg::getStatus, vUserOrg.getStatus());
+ }
+ if (StringUtils.isNotBlank(vUserOrg.getUserName())) {
+ wrappers.like(VUserOrg::getUserName, vUserOrg.getUserName());
+ }
+ if (StringUtils.isNotBlank(vUserOrg.getNickName())) {
+ wrappers.like(VUserOrg::getNickName, vUserOrg.getNickName());
+ }
+ if (StringUtils.isNotBlank(vUserOrg.getUserType())) {
+ wrappers.eq(VUserOrg::getUserType, vUserOrg.getUserType());
+ }
+ if (StringUtils.isNotBlank(vUserOrg.getPhonenumber())) {
+ wrappers.eq(VUserOrg::getPhonenumber, vUserOrg.getPhonenumber());
+ }
+ if (vUserOrg.getDeptId() != null) {
+ wrappers.eq(VUserOrg::getDeptId, vUserOrg.getDeptId());
+ }
+ if (vUserOrg.getOrgId() != null) {
+ wrappers.eq(VUserOrg::getOrgId, vUserOrg.getOrgId());
+ }
+ if (StringUtils.isNotBlank(vUserOrg.getOrganizationid())) {
+ wrappers.eq(VUserOrg::getOrganizationid, vUserOrg.getOrganizationid());
+ }
+ if (StringUtils.isNotBlank(vUserOrg.getOrganizationname())) {
+ wrappers.like(VUserOrg::getOrganizationname, vUserOrg.getOrganizationname());
+ }
+ if (StringUtils.isNotBlank(vUserOrg.getCoordinatorNo())) {
+ wrappers.eq(VUserOrg::getCoordinatorNo, vUserOrg.getCoordinatorNo());
+ }
+ if (StringUtils.isNotBlank(vUserOrg.getCoordinatorName())) {
+ wrappers.like(VUserOrg::getCoordinatorName, vUserOrg.getCoordinatorName());
+ }
+ return this.list(wrappers);
+ }
+
+}
diff --git a/ruoyi-project/src/main/resources/mapper/project/BaseOrganizationMapper.xml b/ruoyi-project/src/main/resources/mapper/project/BaseOrganizationMapper.xml
index e162041..567fc02 100644
--- a/ruoyi-project/src/main/resources/mapper/project/BaseOrganizationMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/BaseOrganizationMapper.xml
@@ -35,11 +35,19 @@
<result property="communityname" column="CommunityName"/>
<result property="countycode" column="CountyCode"/>
<result property="countyname" column="CountyName"/>
+ <result property="reporterName" column="reporter_name"/>
+ <result property="reporterNo" column="reporter_no"/>
+ <result property="coordinatorName" column="coordinator_name"/>
+ <result property="coordinatorNo" column="coordinator_no"/>
</resultMap>
<sql id="selectBaseOrganizationVo">
select ID,
OrganizationName,
+ reporter_name,
+ reporter_no,
+ coordinator_name,
+ coordinator_no,
OrganizationID,
LogoUrl,
RegisterTime,
@@ -104,6 +112,10 @@
#{communityname}, '%')
</if>
<if test="countycode != null and countycode != ''">and CountyCode = #{countycode}</if>
+ <if test="reporterName != null and reporterName != ''">and reporter_name = #{reporterName}</if>
+ <if test="reporterNo != null and reporterNo != ''">and reporter_no = #{reporterNo}</if>
+ <if test="coordinatorName != null and coordinatorName != ''">and coordinator_name = #{coordinatorName}</if>
+ <if test="coordinatorNo != null and coordinatorNo != ''">and coordinatorNo = #{coordinatorNo}</if>
<if test="countyname != null and countyname != ''">and CountyName like concat('%', #{countyname}, '%')</if>
</where>
</select>
@@ -142,4 +154,4 @@
</select>
-</mapper>
\ No newline at end of file
+</mapper>
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml
index aee2e13..ad612dc 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoMapper.xml
@@ -61,7 +61,7 @@
<result property="reportername" column="ReporterName"/>
<result property="reporterphone" column="ReporterPhone"/>
<result property="reporttime" column="ReportTime"/>
- <result property="del_flag" column="del_flag"/>
+ <result property="delFlag" column="del_flag"/>
<result property="createBy" column="create_by"/>
<result property="createTime" column="create_time"/>
<result property="terminationCase" column="termination_case"/>
@@ -71,7 +71,8 @@
<result property="occupation" column="Occupation"/>
<result property="education" column="Education"/>
<result property="nativeplace" column="NativePlace"/>
- <result property="infoname" column="infoName"/>
+ <result property="infoName" column="info_name"/>
+ <result property="infoNo" column="info_no"/>
<result property="infophone" column="infoPhone"/>
<result property="deptid" column="deptid"/>
<result property="deptname" column="deptname"/>
@@ -87,6 +88,9 @@
<result property="currentDept" column="current_dept"/>
<result property="firstDept" column="first_dept"/>
<result property="reportId" column="report_id"/>
+ <result property="gcsScore" column="gcs_score"/>
+ <result property="coordinatorNo" column="coordinator_no"/>
+ <result property="coordinatorName" column="coordinator_name"/>
</resultMap>
<sql id="selectServiceDonatebaseinfoVo">
@@ -108,6 +112,8 @@
service_donatebaseinfo.del_flag = 0
<if test="name != null and name != ''">and Name like concat('%', #{name}, '%')</if>
<if test="sex != null ">and Sex = #{sex}</if>
+ <if test="coordinatorName != null ">and coordinator_name like concat('%',#{coordinatorName}, '%')</if>
+ <if test="coordinatorNo != null ">and coordinator_no = #{coordinatorNo}</if>
<if test="caseNo != null ">and service_donatebaseinfo.case_no = #{caseNo}</if>
<if test="idcardtype != null ">and IDCardType = #{idcardtype}</if>
<if test="idcardno != null and idcardno != ''">and IDCardNo = #{idcardno}</if>
@@ -210,7 +216,8 @@
</if>
<if test="reporterphone != null and reporterphone != ''">and ReporterPhone = #{reporterphone}</if>
<if test="reporttime != null ">and ReportTime = #{reporttime}</if>
- <if test="infoname != null ">and infoName = #{infoname}</if>
+ <if test="infoName != null ">and info_name like concat('%',#{infoName},'%')</if>
+ <if test="infoNo != null ">and info_no = #{infoNo}</if>
<if test="infophone != null ">and infoPhone = #{infophone}</if>
<if test="createBy != null ">and `service_donatebaseinfo`.create_by = #{createBy}</if>
<if test="starttime != null ">and donatetime >= #{starttime}</if>
@@ -226,6 +233,7 @@
<if test="donateno != null ">and donateno = #{donateno}</if>
<if test="workflow != null ">and workflow = #{workflow}</if>
<if test="reportId != null ">and report_id = #{reportId}</if>
+ <if test="gcsScore != null ">and gcs_score = #{gcsScore}</if>
</where>
order by ReportTime desc
@@ -253,6 +261,7 @@
<if test="caseNo != null ">and b.case_no >= #{caseNo}</if>
<if test="reportId != null ">and b.report_id = #{reportId}</if>
<if test="endtime != null ">and b.donatetime <= #{endtime}</if>
+ <if test="gcsScore != null ">and b.gcs_score = #{gcsScore}</if>
<if test="city != null and city != ''">and o.City = #{city}</if>
<if test="reporterno != null and reporterno != ''">and b.ReporterNo = #{reporterno}</if>
</where>
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoReportMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoReportMapper.xml
index 6c29c1e..3b10545 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoReportMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatebaseinfoReportMapper.xml
@@ -43,8 +43,6 @@
<result property="infectious" column="Infectious"/>
<result property="infectiousOther" column="Infectious_Other"/>
<result property="patientstate" column="PatientState"/>
- <result property="reporterno" column="ReporterNo"/>
- <result property="reportername" column="ReporterName"/>
<result property="reporterphone" column="ReporterPhone"/>
<result property="reporttime" column="ReportTime"/>
<result property="delFlag" column="del_flag"/>
@@ -58,14 +56,26 @@
<result property="deptName" column="dept_name"/>
<result property="deptNo" column="dept_no"/>
<result property="isTransport" column="is_transport"/>
- <result property="gscScore" column="gsc_score"/>
+ <result property="gcsScore" column="gcs_score"/>
+ <result property="rhYin" column="rh_yin"/>
+ <result property="bloodType" column="blood_type"/>
+ <result property="coordinatorName" column="coordinator_name"/>
+ <result property="coordinatorNo" column="coordinator_no"/>
+ <result property="infoName" column="info_name"/>
+ <result property="infoNo" column="info_no"/>
</resultMap>
<sql id="selectServiceDonatebaseinfoReportVo">
select ID,
case_no,
+ coordinator_name,
+ coordinator_no,
+ info_name,
+ info_no,
+ blood_type,
+ rh_yin,
report_status,
- gsc_score,
+ gcs_score,
Name,
Sex,
IDCardType,
@@ -101,8 +111,6 @@
Infectious,
Infectious_Other,
PatientState,
- ReporterNo,
- ReporterName,
ReporterPhone,
ReportTime,
del_flag,
@@ -125,7 +133,11 @@
<include refid="selectServiceDonatebaseinfoReportVo"/>
<where>
<if test="caseNo != null and caseNo != ''">and case_no = #{caseNo}</if>
- <if test="gscScore != null and gscScore != ''">and gsc_score = #{gscScore}</if>
+ <if test="coordinatorName != null ">and coordinator_name like concat('%', #{coordinatorName}, '%')</if>
+ <if test="coordinatorNo != null ">and coordinator_no = #{coordinatorNo}</if>
+ <if test="infoName != null ">and info_name like concat('%', #{infoName}, '%')</if>
+ <if test="infoNo != null ">and info_no = #{infoNo}</if>
+ <if test="gcsScore != null and gcsScore != ''">and gcs_score = #{gcsScore}</if>
<if test="reportStatus != null and reportStatus != ''">and report_status = #{reportStatus}</if>
<if test="name != null and name != ''">and Name like concat('%', #{name}, '%')</if>
<if test="sex != null and sex != ''">and Sex = #{sex}</if>
@@ -192,10 +204,6 @@
<if test="infectious != null and infectious != ''">and Infectious = #{infectious}</if>
<if test="infectiousOther != null and infectiousOther != ''">and Infectious_Other = #{infectiousOther}</if>
<if test="patientstate != null and patientstate != ''">and PatientState = #{patientstate}</if>
- <if test="reporterno != null and reporterno != ''">and ReporterNo = #{reporterno}</if>
- <if test="reportername != null and reportername != ''">and ReporterName like concat('%', #{reportername},
- '%')
- </if>
<if test="reporterphone != null and reporterphone != ''">and ReporterPhone = #{reporterphone}</if>
<if test="reporttime != null ">and ReportTime = #{reporttime}</if>
<if test="terminationCase != null ">and termination_case = #{terminationCase}</if>
@@ -204,6 +212,8 @@
<if test="deptNo != null and deptNo != ''">and dept_no = #{deptNo}</if>
<if test="deptName != null and deptName != ''">and dept_name = #{deptName}</if>
<if test="isTransport != null and isTransport != ''">and is_transport = #{isTransport}</if>
+ <if test="rhYin != null and rhYin != ''">and rh_yin = #{rhYin}</if>
+ <if test="bloodType != null and bloodType != ''">and blood_type = #{bloodType}</if>
</where>
</select>
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceDonatemaintenanceMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatemaintenanceMapper.xml
new file mode 100644
index 0000000..d5c2d00
--- /dev/null
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceDonatemaintenanceMapper.xml
@@ -0,0 +1,54 @@
+<?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.ruoyi.project.mapper.ServiceDonatemaintenanceMapper">
+
+ <resultMap type="com.ruoyi.project.domain.ServiceDonatemaintenance" id="ServiceDonatemaintenanceResult">
+ <result property="id" column="ID"/>
+ <result property="infoid" column="InfoID"/>
+ <result property="caseNo" column="case_no"/>
+ <result property="donorno" column="DonorNo"/>
+ <result property="itemNo" column="item_no"/>
+ <result property="itemName" column="item_name"/>
+ <result property="itemTime" column="item_time"/>
+ <result property="itemDesc" column="item_desc"/>
+ <result property="delFlag" column="del_flag"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ </resultMap>
+
+ <sql id="selectServiceDonatemaintenanceVo">
+ select ID,
+ InfoID,
+ case_no,
+ DonorNo,
+ item_no,
+ item_name,
+ item_time,
+ item_desc,
+ del_flag,
+ create_by,
+ create_time,
+ update_by,
+ update_time
+ from service_donatemaintenance
+ </sql>
+
+ <select id="selectServiceDonatemaintenanceList" parameterType="com.ruoyi.project.domain.ServiceDonatemaintenance"
+ resultMap="ServiceDonatemaintenanceResult">
+ <include refid="selectServiceDonatemaintenanceVo"/>
+ <where>
+ <if test="infoid != null ">and InfoID = #{infoid}</if>
+ <if test="caseNo != null and caseNo != ''">and case_no = #{caseNo}</if>
+ <if test="donorno != null and donorno != ''">and DonorNo = #{donorno}</if>
+ <if test="itemNo != null and itemNo != ''">and item_no = #{itemNo}</if>
+ <if test="itemName != null and itemName != ''">and item_name like concat('%', #{itemName}, '%')</if>
+ <if test="itemTime != null ">and item_time = #{itemTime}</if>
+ <if test="itemDesc != null and itemDesc != ''">and item_desc = #{itemDesc}</if>
+ </where>
+ </select>
+
+</mapper>
diff --git a/ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewinitiateMapper.xml b/ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewinitiateMapper.xml
index 3d94602..e4be9fc 100644
--- a/ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewinitiateMapper.xml
+++ b/ruoyi-project/src/main/resources/mapper/project/ServiceEthicalreviewinitiateMapper.xml
@@ -19,12 +19,28 @@
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="remark" column="remark"/>
+ <result property="orderNo" column="order_no"/>
+ <result property="expertConclusion" column="expert_conclusion"/>
+ <result property="expertName" column="expert_name"/>
+ <result property="expertNo" column="expert_no"/>
+ <result property="expertOpinion" column="expert_opinion"/>
+ <result property="expertTime" column="expert_time"/>
+ <result property="expertType" column="expert_type"/>
+ <result property="status" column="status"/>
</resultMap>
<sql id="selectServiceEthicalreviewinitiateVo">
select ID,
InfoID,
case_no,
+ order_no,
+ expert_conclusion,
+ expert_name,
+ expert_no,
+ expert_opinion,
+ expert_time,
+ expert_type,
+ status,
initiate_person,
start_time,
end_time,
@@ -51,6 +67,15 @@
<if test="endTime != null ">and end_time = #{endTime}</if>
<if test="initiateTheme != null and initiateTheme != ''">and initiate_theme = #{initiateTheme}</if>
<if test="cutOffTime != null ">and cut_off_time = #{cutOffTime}</if>
+ <if test="expertConclusion != null ">and expert_conclusion = #{expertConclusion}</if>
+ <if test="orderNo != null ">and order_no = #{orderNo}</if>
+ <if test="expertName != null ">and expert_name = #{expertName}</if>
+ <if test="expertOpinion != null ">and expert_opinion = #{expertOpinion}</if>
+ <if test="expertTime != null ">and expert_time = #{expertTime}</if>
+ <if test="expertType != null ">and expert_type = #{expertType}</if>
+ <if test="status != null ">and status = #{status}</if>
+ <if test="expertNo != null ">and expert_no = #{expertNo}</if>
+
</where>
</select>
diff --git a/ruoyi-project/src/main/resources/mapper/project/VUserOrgMapper.xml b/ruoyi-project/src/main/resources/mapper/project/VUserOrgMapper.xml
new file mode 100644
index 0000000..d073878
--- /dev/null
+++ b/ruoyi-project/src/main/resources/mapper/project/VUserOrgMapper.xml
@@ -0,0 +1,60 @@
+<?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.ruoyi.project.mapper.VUserOrgMapper">
+
+ <resultMap type="com.ruoyi.project.domain.VUserOrg" id="VUserOrgResult">
+ <result property="userId" column="user_id"/>
+ <result property="status" column="status"/>
+ <result property="userName" column="user_name"/>
+ <result property="nickName" column="nick_name"/>
+ <result property="userType" column="user_type"/>
+ <result property="phonenumber" column="phonenumber"/>
+ <result property="deptId" column="dept_id"/>
+ <result property="orgId" column="org_id"/>
+ <result property="organizationid" column="OrganizationID"/>
+ <result property="organizationname" column="OrganizationName"/>
+ <result property="coordinatorNo" column="coordinator_no"/>
+ <result property="coordinatorName" column="coordinator_name"/>
+ </resultMap>
+
+ <sql id="selectVUserOrgVo">
+ select user_id,
+ status,
+ user_name,
+ nick_name,
+ user_type,
+ phonenumber,
+ dept_id,
+ org_id,
+ OrganizationID,
+ OrganizationName,
+ coordinator_no,
+ coordinator_name
+ from v_user_org
+ </sql>
+
+ <select id="selectVUserOrgList" parameterType="com.ruoyi.project.domain.VUserOrg" resultMap="VUserOrgResult">
+ <include refid="selectVUserOrgVo"/>
+ <where>
+ <if test="userId != null ">and user_id = #{userId}</if>
+ <if test="status != null and status != ''">and status = #{status}</if>
+ <if test="userName != null and userName != ''">and user_name like concat('%', #{userName}, '%')</if>
+ <if test="nickName != null and nickName != ''">and nick_name like concat('%', #{nickName}, '%')</if>
+ <if test="userType != null and userType != ''">and user_type = #{userType}</if>
+ <if test="phonenumber != null and phonenumber != ''">and phonenumber = #{phonenumber}</if>
+ <if test="deptId != null ">and dept_id = #{deptId}</if>
+ <if test="orgId != null ">and org_id = #{orgId}</if>
+ <if test="organizationid != null and organizationid != ''">and OrganizationID = #{organizationid}</if>
+ <if test="organizationname != null and organizationname != ''">and OrganizationName like concat('%',
+ #{organizationname}, '%')
+ </if>
+ <if test="coordinatorNo != null and coordinatorNo != ''">and coordinator_no = #{coordinatorNo}</if>
+ <if test="coordinatorName != null and coordinatorName != ''">and coordinator_name like concat('%',
+ #{coordinatorName}, '%')
+ </if>
+ </where>
+ </select>
+
+</mapper>
--
Gitblit v1.9.3