合并发布:集成GitLab远端主数据扩展与教学资源基线

This commit is contained in:
wangzhibiao committed 2026-10-09 14:29:26 +08:00
commit b93ac3fa71
43 files changed
+2583 -65

No files matched your search

@@ -0,0 +1,93 @@
package com.ruoyi.web.controller.train;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
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.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.SecurityUtils;
import com.ruoyi.train.domain.TrainResource;
import com.ruoyi.train.service.ITrainResourceService;
/**
* 教学资源Controller
*
* @author ruoyi
*/
@RestController
@RequestMapping("/train/resource")
public class TrainResourceController extends BaseController
{
@Autowired
private ITrainResourceService trainResourceService;
/**
* 查询教学资源列表
*/
@PreAuthorize("@ss.hasPermi('train:resource:list')")
@GetMapping("/list")
public TableDataInfo list(TrainResource trainResource)
{
startPage();
List<TrainResource> list = trainResourceService.selectTrainResourceList(trainResource);
return getDataTable(list);
}
/**
* 获取教学资源详细信息
*/
@PreAuthorize("@ss.hasPermi('train:resource:list')")
@GetMapping(value = "/{resourceId}")
public AjaxResult getInfo(@PathVariable("resourceId") String resourceId)
{
return success(trainResourceService.selectTrainResourceByResourceId(resourceId));
}
/**
* 新增教学资源
*/
@PreAuthorize("@ss.hasPermi('train:resource:edit')")
@Log(title = "教学资源", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@Validated @RequestBody TrainResource trainResource)
{
trainResource.setCreateBy(SecurityUtils.getUsername());
return toAjax(trainResourceService.insertTrainResource(trainResource));
}
/**
* 删除教学资源 (RESTful DELETE /train/resource/{resourceIds})
*/
@PreAuthorize("@ss.hasPermi('train:resource:edit')")
@Log(title = "教学资源", businessType = BusinessType.DELETE)
@DeleteMapping("/{resourceIds}")
public AjaxResult remove(@PathVariable String[] resourceIds)
{
return toAjax(trainResourceService.deleteTrainResourceByResourceIds(resourceIds));
}
/**
* 修改教学资源 (RESTful PUT /train/resource/{resourceId})
*/
@PreAuthorize("@ss.hasPermi('train:resource:edit')")
@Log(title = "教学资源", businessType = BusinessType.UPDATE)
@PutMapping("/{resourceId}")
public AjaxResult edit(@PathVariable("resourceId") String resourceId, @Validated @RequestBody TrainResource trainResource)
{
trainResource.setResourceId(resourceId);
trainResource.setUpdateBy(SecurityUtils.getUsername());
return toAjax(trainResourceService.updateTrainResource(trainResource));
}
}
@@ -1,15 +1,12 @@
package com.ruoyi.web.controller.train;
import java.util.List;
import java.util.regex.Pattern;
import javax.validation.Valid;
import com.ruoyi.common.utils.StringUtils;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.github.pagehelper.PageInfo;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.constant.HttpStatus;
@@ -18,6 +15,7 @@ import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.train.domain.dto.StudentCreateDTO;
import com.ruoyi.train.domain.dto.StudentUpdateDTO;
import com.ruoyi.train.domain.query.StudentQuery;
import com.ruoyi.train.domain.vo.StudentAdminVO;
import com.ruoyi.train.domain.vo.StudentDetailVO;
@@ -30,6 +28,8 @@ import com.ruoyi.web.service.train.TrainAccountBindingAdminService;
@RequestMapping({"/train/student", "/train/students"})
public class TrainStudentController extends BaseController
{
private static final Pattern PHONE_PATTERN = Pattern.compile("^1[3-9]\\d{9}$");
private final ITrainStudentService trainStudentService;
private final TrainAccountBindingAdminService bindingAdminService;
@@ -76,6 +76,27 @@ public class TrainStudentController extends BaseController
return success(trainStudentService.createStudent(dto));
}
/**
* 修改学员信息 (PUT /train/student/{sId})
*/
@PreAuthorize("@ss.hasPermi('train:student:edit')")
@Log(title = "学员主档", businessType = BusinessType.UPDATE,
isSaveRequestData = false, isSaveResponseData = true)
@PutMapping(value = "/{sId}")
public AjaxResult edit(@PathVariable("sId") String sId, @Valid @RequestBody StudentUpdateDTO dto)
{
dto.setsId(sId);
if (StringUtils.isNotEmpty(dto.getsName()) && dto.getsName().trim().length() > 50)
{
return AjaxResult.error("学员姓名长度不能超过50个字符");
}
if (StringUtils.isNotEmpty(dto.getsPhone()) && !isValidPhone(dto.getsPhone()))
{
return AjaxResult.error("学员手机号码格式不正确");
}
return success(trainStudentService.updateTrainStudent(dto));
}
@PreAuthorize("@ss.hasPermi('train:student:remove')")
@Log(title = "学员主档", businessType = BusinessType.DELETE)
@DeleteMapping("/{sId}")
@@ -83,4 +104,9 @@ public class TrainStudentController extends BaseController
{
return toAjax(trainStudentService.deleteTrainStudentBySId(sId));
}
private boolean isValidPhone(String phone)
{
return PHONE_PATTERN.matcher(phone).matches();
}
}
@@ -4,6 +4,7 @@ import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
@@ -67,6 +68,17 @@ public class TrainTrainingSiteController extends BaseController
return toAjax(trainTrainingSiteService.insertTrainTrainingSite(trainTrainingSite));
}
/**
* 删除实训场地 (RESTful DELETE /train/training-site/{siteIds})
*/
@PreAuthorize("@ss.hasPermi('train:site:edit')")
@Log(title = "实训场地", businessType = BusinessType.DELETE)
@DeleteMapping("/{siteIds}")
public AjaxResult remove(@PathVariable String[] siteIds)
{
return toAjax(trainTrainingSiteService.deleteTrainTrainingSiteBySiteIds(siteIds));
}
/**
* 修改实训场地 (RESTful PUT /train/training-site/{siteId})
*/