luotaiqian 2026-07-20 14:33:12 +08:00
parent 3568681ae4
commit 1b6cd9434d
25 changed files with 1119 additions and 0 deletions

View File

@ -0,0 +1,74 @@
package org.qinan.safetyeval.adapter.web;
import com.alibaba.cola.dto.PageResponse;
import com.alibaba.cola.dto.Response;
import com.alibaba.cola.dto.SingleResponse;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.app.file.service.QualOnSiteReviewFileServiceI;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileAddCmd;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFilePageQry;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileUpdateCmd;
import org.qinan.safetyeval.client.file.response.QualOnSiteReviewFileCo;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.io.Serializable;
/**
* -
*
* @Author: ltq
* @Date: 2026-07-20 14:28:24
*/
@RestController
@AllArgsConstructor
@Api(tags = "资质现场核查-文件信息")
@RequestMapping("/safetyEval/qual-on-site-review-file")
public class QualOnSiteReviewFileController implements Serializable {
private static final long serialVersionUID = 1L;
private final QualOnSiteReviewFileServiceI qualOnSiteReviewFileServiceI;
@GetMapping
@ApiOperation("查询资质现场核查-文件信息列表-分页")
public PageResponse<QualOnSiteReviewFileCo> list(@Validated QualOnSiteReviewFilePageQry qry) {
return qualOnSiteReviewFileServiceI.listQualOnSiteReviewFilePage(qry);
}
@GetMapping("/{id}")
@ApiOperation("查询资质现场核查-文件信息详情页面")
public SingleResponse<QualOnSiteReviewFileCo> getInfo(@PathVariable("id") Long id) {
return SingleResponse.of(qualOnSiteReviewFileServiceI.getQualOnSiteReviewFileById(id));
}
@PostMapping
@ApiOperation("新增资质现场核查-文件信息")
public Response save(@Validated @RequestBody QualOnSiteReviewFileAddCmd qualOnSiteReviewFileAddCmd) {
qualOnSiteReviewFileServiceI.saveQualOnSiteReviewFile(qualOnSiteReviewFileAddCmd);
return Response.buildSuccess();
}
@PutMapping
@ApiOperation("修改资质现场核查-文件信息")
public Response update(@Validated @RequestBody QualOnSiteReviewFileUpdateCmd qualOnSiteReviewFileUpdateCmd) {
qualOnSiteReviewFileServiceI.updateQualOnSiteReviewFile(qualOnSiteReviewFileUpdateCmd);
return Response.buildSuccess();
}
@DeleteMapping("/{id}")
@ApiOperation("删除资质现场核查-文件信息(单个)")
public Response deletedById(@PathVariable("id") Long id) {
qualOnSiteReviewFileServiceI.deletedQualOnSiteReviewFileById(id);
return Response.buildSuccess();
}
@DeleteMapping("/ids")
@ApiOperation("删除资质现场核查-文件信息(多个)")
public Response deletedByIds(@RequestParam Long[] ids) {
qualOnSiteReviewFileServiceI.deletedQualOnSiteReviewFileByIds(ids);
return Response.buildSuccess();
}
}

View File

@ -0,0 +1,34 @@
package org.qinan.safetyeval.app.file.convertor;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileAddCmd;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileUpdateCmd;
import org.qinan.safetyeval.domain.file.model.QualOnSiteReviewFileE;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Mapper(componentModel = "spring")
public interface QualOnSiteReviewFileCmdConvertor {
/**
* cmd_add
*
* @param qualOnSiteReviewFileAddCmd
* @return
*/
@Mapping(target = "qualOnSiteReviewFileGateway", ignore = true)
QualOnSiteReviewFileE convertCmdToE(QualOnSiteReviewFileAddCmd qualOnSiteReviewFileAddCmd);
/**
* cmd_update
*
* @param qualOnSiteReviewFileUpdateCmd
* @return
*/
@Mapping(target = "qualOnSiteReviewFileGateway", ignore = true)
QualOnSiteReviewFileE convertCmdToE(QualOnSiteReviewFileUpdateCmd qualOnSiteReviewFileUpdateCmd);
}

View File

@ -0,0 +1,42 @@
package org.qinan.safetyeval.app.file.executor.command;
import com.alibaba.cola.exception.BizException;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.app.file.convertor.QualOnSiteReviewFileCmdConvertor;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileAddCmd;
import org.qinan.safetyeval.domain.file.ability.QualOnSiteReviewFileAbility;
import org.qinan.safetyeval.domain.file.model.QualOnSiteReviewFileE;
import org.qinan.safetyeval.infrastructure.persistence.queryservice.QualOnSiteReviewFileQueryService;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* -
*
* @author ltq
* @date 2026-07-20 14:28:24
*/
@Component
@AllArgsConstructor
public class QualOnSiteReviewFileAddCmdExe {
private final QualOnSiteReviewFileQueryService qualOnSiteReviewFileQueryService;
private final QualOnSiteReviewFileCmdConvertor qualOnSiteReviewFileCmdConvertor;
private final QualOnSiteReviewFileAbility qualOnSiteReviewFileAbility;
/**
* -
*
* @param qualOnSiteReviewFileAddCmd -
* @return
*/
@Transactional(rollbackFor = Exception.class)
public boolean execute(QualOnSiteReviewFileAddCmd qualOnSiteReviewFileAddCmd) {
QualOnSiteReviewFileE qualOnSiteReviewFileE = qualOnSiteReviewFileCmdConvertor.convertCmdToE(qualOnSiteReviewFileAddCmd);
boolean res = qualOnSiteReviewFileE.add();
if (!res) {
throw new BizException("保存失败");
}
return true;
}
}

View File

@ -0,0 +1,55 @@
package org.qinan.safetyeval.app.file.executor.command;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.cola.exception.BizException;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.domain.file.ability.QualOnSiteReviewFileAbility;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* -
*
* @author ltq
* @date 2026-07-20 14:28:24
*/
@Component
@AllArgsConstructor
public class QualOnSiteReviewFileDelCmdExe {
private final QualOnSiteReviewFileAbility qualOnSiteReviewFileAbility;
/**
* IDS-
*
* @param ids -ID
* @return
*/
@Transactional(rollbackFor = Exception.class)
public boolean execute(Long[] ids) {
if (ObjectUtil.isEmpty(ids)) {
throw new BizException("请传入正确的ID");
}
boolean deleteRes = qualOnSiteReviewFileAbility.deletedQualOnSiteReviewFileByIds(ids);
if (!deleteRes) {
throw new BizException("删除失败");
}
return true;
}
/**
* ID-
*
* @param id -ID
* @return
*/
@Transactional(rollbackFor = Exception.class)
public boolean execute(Long id) {
boolean deleteRes = qualOnSiteReviewFileAbility.deletedQualOnSiteReviewFileById(id);
if (!deleteRes) {
throw new BizException("删除失败");
}
return true;
}
}

View File

@ -0,0 +1,41 @@
package org.qinan.safetyeval.app.file.executor.command;
import com.alibaba.cola.exception.BizException;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.app.file.convertor.QualOnSiteReviewFileCmdConvertor;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileUpdateCmd;
import org.qinan.safetyeval.domain.file.ability.QualOnSiteReviewFileAbility;
import org.qinan.safetyeval.domain.file.model.QualOnSiteReviewFileE;
import org.qinan.safetyeval.infrastructure.persistence.queryservice.QualOnSiteReviewFileQueryService;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
/**
* -
*
* @author ltq
* @date 2026-07-20 14:28:24
*/
@Component
@AllArgsConstructor
public class QualOnSiteReviewFileUpdateCmdExe {
private final QualOnSiteReviewFileQueryService qualOnSiteReviewFileQueryService;
private final QualOnSiteReviewFileCmdConvertor qualOnSiteReviewFileCmdConvertor;
private final QualOnSiteReviewFileAbility qualOnSiteReviewFileAbility;
/**
* -
*
* @param qualOnSiteReviewFileUpdateCmd -
* @return
*/
@Transactional(rollbackFor = Exception.class)
public boolean execute(QualOnSiteReviewFileUpdateCmd qualOnSiteReviewFileUpdateCmd) {
QualOnSiteReviewFileE qualOnSiteReviewFileE = qualOnSiteReviewFileCmdConvertor.convertCmdToE(qualOnSiteReviewFileUpdateCmd);
Boolean updateRes = qualOnSiteReviewFileE.update();
if (!updateRes) {
throw new BizException("数据已被更新,请刷新重试");
}
return true;
}
}

View File

@ -0,0 +1,34 @@
package org.qinan.safetyeval.app.file.executor.query;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.client.file.response.QualOnSiteReviewFileCo;
import org.qinan.safetyeval.infrastructure.convertor.QualOnSiteReviewFileDoConvertor;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewFileDO;
import org.qinan.safetyeval.infrastructure.persistence.queryservice.QualOnSiteReviewFileQueryService;
import org.springframework.stereotype.Component;
/**
* -
*
* @author ltq
* @date 2026-07-20 14:28:24
*/
@Component
@AllArgsConstructor
public class QualOnSiteReviewFileListQueryExe {
private final QualOnSiteReviewFileQueryService qualOnSiteReviewFileQueryService;
private final QualOnSiteReviewFileDoConvertor qualOnSiteReviewFileDoConvertor;
/**
* ID-
*
* @param id -ID
* @return
*/
public QualOnSiteReviewFileCo execute(Long id) {
QualOnSiteReviewFileDO qualOnSiteReviewFileDO = qualOnSiteReviewFileQueryService.getById(id);
return qualOnSiteReviewFileDoConvertor.converDoToCo(qualOnSiteReviewFileDO);
}
}

View File

@ -0,0 +1,32 @@
package org.qinan.safetyeval.app.file.executor.query;
import com.alibaba.cola.dto.PageResponse;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFilePageQry;
import org.qinan.safetyeval.client.file.response.QualOnSiteReviewFileCo;
import org.qinan.safetyeval.infrastructure.persistence.queryservice.QualOnSiteReviewFileQueryService;
import org.springframework.stereotype.Component;
/**
* -
*
* @author ltq
* @date 2026-07-20 14:28:24
*/
@Component
@AllArgsConstructor
public class QualOnSiteReviewFilePageQueryExe {
private final QualOnSiteReviewFileQueryService qualOnSiteReviewFileQueryService;
/**
* -
*
* @param qualOnSiteReviewFilePageQry
* @return
*/
public PageResponse<QualOnSiteReviewFileCo> execute(QualOnSiteReviewFilePageQry qualOnSiteReviewFilePageQry) {
return qualOnSiteReviewFileQueryService.listQualOnSiteReviewFilePage(qualOnSiteReviewFilePageQry);
}
}

View File

@ -0,0 +1,65 @@
package org.qinan.safetyeval.app.file.service;
import com.alibaba.cola.dto.PageResponse;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileAddCmd;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFilePageQry;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileUpdateCmd;
import org.qinan.safetyeval.client.file.response.QualOnSiteReviewFileCo;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
public interface QualOnSiteReviewFileServiceI {
/**
* -
*
* @param qualOnSiteReviewFilePageQry
* @return
*/
PageResponse<QualOnSiteReviewFileCo> listQualOnSiteReviewFilePage(QualOnSiteReviewFilePageQry qualOnSiteReviewFilePageQry);
/**
* ID-
*
* @param id -ID
* @return
*/
QualOnSiteReviewFileCo getQualOnSiteReviewFileById(Long id);
/**
* -
*
* @param qualOnSiteReviewFileAddCmd -
* @return
*/
boolean saveQualOnSiteReviewFile(QualOnSiteReviewFileAddCmd qualOnSiteReviewFileAddCmd);
/**
* -
*
* @param qualOnSiteReviewFileUpdateCmd -
* @return
*/
boolean updateQualOnSiteReviewFile(QualOnSiteReviewFileUpdateCmd qualOnSiteReviewFileUpdateCmd);
/**
* -
*
* @param id -ID
* @return
*/
boolean deletedQualOnSiteReviewFileById(Long id);
/**
* -
*
* @param ids -IDs
* @return
*/
boolean deletedQualOnSiteReviewFileByIds(Long[] ids);
}

View File

@ -0,0 +1,63 @@
package org.qinan.safetyeval.app.file.service.impl;
import com.alibaba.cola.dto.PageResponse;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.app.file.executor.command.QualOnSiteReviewFileAddCmdExe;
import org.qinan.safetyeval.app.file.executor.command.QualOnSiteReviewFileDelCmdExe;
import org.qinan.safetyeval.app.file.executor.command.QualOnSiteReviewFileUpdateCmdExe;
import org.qinan.safetyeval.app.file.executor.query.QualOnSiteReviewFileListQueryExe;
import org.qinan.safetyeval.app.file.executor.query.QualOnSiteReviewFilePageQueryExe;
import org.qinan.safetyeval.app.file.service.QualOnSiteReviewFileServiceI;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileAddCmd;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFilePageQry;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFileUpdateCmd;
import org.qinan.safetyeval.client.file.response.QualOnSiteReviewFileCo;
import org.springframework.stereotype.Service;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Service
@AllArgsConstructor
public class QualOnSiteReviewFileServiceImpl implements QualOnSiteReviewFileServiceI {
private final QualOnSiteReviewFileListQueryExe qualOnSiteReviewFileListQueryExe;
private final QualOnSiteReviewFileUpdateCmdExe qualOnSiteReviewFileUpdateCommandExe;
private final QualOnSiteReviewFileAddCmdExe qualOnSiteReviewFileAddCommandExe;
private final QualOnSiteReviewFileDelCmdExe qualOnSiteReviewFileDelCommandExe;
private final QualOnSiteReviewFilePageQueryExe qualOnSiteReviewFilePageQueryExe;
@Override
public PageResponse<QualOnSiteReviewFileCo> listQualOnSiteReviewFilePage(QualOnSiteReviewFilePageQry qualOnSiteReviewFilePageQry) {
return qualOnSiteReviewFilePageQueryExe.execute(qualOnSiteReviewFilePageQry);
}
@Override
public QualOnSiteReviewFileCo getQualOnSiteReviewFileById(Long id) {
return qualOnSiteReviewFileListQueryExe.execute(id);
}
@Override
public boolean saveQualOnSiteReviewFile(QualOnSiteReviewFileAddCmd qualOnSiteReviewFileAddCmd) {
return qualOnSiteReviewFileAddCommandExe.execute(qualOnSiteReviewFileAddCmd);
}
@Override
public boolean updateQualOnSiteReviewFile(QualOnSiteReviewFileUpdateCmd qualOnSiteReviewFileUpdateCmd) {
return qualOnSiteReviewFileUpdateCommandExe.execute(qualOnSiteReviewFileUpdateCmd);
}
@Override
public boolean deletedQualOnSiteReviewFileById(Long id) {
return qualOnSiteReviewFileDelCommandExe.execute(id);
}
@Override
public boolean deletedQualOnSiteReviewFileByIds(Long[] ids) {
return qualOnSiteReviewFileDelCommandExe.execute(ids);
}
}

View File

@ -0,0 +1,35 @@
package org.qinan.safetyeval.client.file.request;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
/**
* -Cmd
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Data
public class QualOnSiteReviewFileAddCmd implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "资质现场核查id", required = true)
@NotNull(message = "资质现场核查id不能为空")
private Long qualOnSiteReviewId;
@ApiModelProperty(value = "文件名称", required = true)
@NotBlank(message = "文件名称不能为空")
@Size(max = 128, message ="文件名称不能超过128个字符")
private String fileName;
@ApiModelProperty(value = "文件url", required = true)
@NotBlank(message = "文件url不能为空")
@Size(max = 1024, message = "文件url不能超过1024个字符")
private String fileUrl;
}

View File

@ -0,0 +1,30 @@
package org.qinan.safetyeval.client.file.request;
import com.alibaba.cola.dto.PageQuery;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* -Qry
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Data
public class QualOnSiteReviewFilePageQry extends PageQuery {
private static final long serialVersionUID = 1L;
/**
* id
*/
@ApiModelProperty(value = "资质现场核查id")
@NotNull
private Long qualOnSiteReviewId;
/**
*
*/
@ApiModelProperty(value = "文件名称")
private String fileName;
}

View File

@ -0,0 +1,39 @@
package org.qinan.safetyeval.client.file.request;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
/**
* -Cmd
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Data
public class QualOnSiteReviewFileUpdateCmd implements Serializable {
private static final long serialVersionUID = 1L;
@JsonFormat(shape = JsonFormat.Shape.STRING)
@NotNull
private Long id;
@ApiModelProperty(value = "资质现场核查id", required = true)
@NotNull(message = "资质现场核查id不能为空")
private Long qualOnSiteReviewId;
@ApiModelProperty(value = "文件名称", required = true)
@NotBlank(message = "文件名称不能为空")
@Size(max = 128, message ="文件名称不能超过128个字符")
private String fileName;
@ApiModelProperty(value = "文件url", required = true)
@NotBlank(message = "文件url不能为空")
@Size(max = 1024, message = "文件url不能超过1024个字符")
private String fileUrl;
}

View File

@ -0,0 +1,41 @@
package org.qinan.safetyeval.client.file.response;
import com.alibaba.cola.dto.ClientObject;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* -Co
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Data
public class QualOnSiteReviewFileCo extends ClientObject {
private static final long serialVersionUID = 1L;
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id;
/**
* id
*/
@ApiModelProperty(value = "资质现场核查id")
private Long qualOnSiteReviewId;
/**
*
*/
@ApiModelProperty(value = "文件名称")
private String fileName;
/**
* url
*/
@ApiModelProperty(value = "文件url")
private String fileUrl;
/**
*
*/
@ApiModelProperty(value = "环境")
private String env;
@ApiModelProperty(value = "version")
private Integer version;
}

View File

@ -0,0 +1,29 @@
package org.qinan.safetyeval.domain.file.ability;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.domain.file.gateway.QualOnSiteReviewFileGateway;
import org.springframework.stereotype.Service;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Service
@AllArgsConstructor
public class QualOnSiteReviewFileAbility {
/**
*
**/
private final QualOnSiteReviewFileGateway qualOnSiteReviewFileGateway;
public boolean deletedQualOnSiteReviewFileById(Long id) {
return qualOnSiteReviewFileGateway.deletedQualOnSiteReviewFileById(id);
}
public boolean deletedQualOnSiteReviewFileByIds(Long[] ids) {
return qualOnSiteReviewFileGateway.deletedQualOnSiteReviewFileByIds(ids);
}
}

View File

@ -0,0 +1,44 @@
package org.qinan.safetyeval.domain.file.gateway;
import org.qinan.safetyeval.domain.file.model.QualOnSiteReviewFileE;
/**
* -
*
* @Author: WGG
* @Date: 2022/3/22 16:49
*/
public interface QualOnSiteReviewFileGateway {
/**
* -
*
* @param qualOnSiteReviewFileE -
* @return
*/
Boolean add(QualOnSiteReviewFileE qualOnSiteReviewFileE);
/**
* -
*
* @param qualOnSiteReviewFileE -
* @return
*/
Boolean update(QualOnSiteReviewFileE qualOnSiteReviewFileE);
/**
* -
*
* @param id
* @return
*/
Boolean deletedQualOnSiteReviewFileById(Long id);
/**
* -
*
* @param ids
* @return
*/
Boolean deletedQualOnSiteReviewFileByIds(Long[] ids);
}

View File

@ -0,0 +1,56 @@
package org.qinan.safetyeval.domain.file.model;
import cn.hutool.extra.spring.SpringUtil;
import com.alibaba.cola.domain.DomainFactory;
import com.alibaba.cola.domain.Entity;
import com.jjb.saas.framework.domain.model.BaseE;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.qinan.safetyeval.domain.file.gateway.QualOnSiteReviewFileGateway;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Data
@Entity
@EqualsAndHashCode(callSuper = true)
public class QualOnSiteReviewFileE extends BaseE {
private static final long serialVersionUID = 1L;
/**
* id
*/
private Long qualOnSiteReviewId;
/**
*
*/
private String fileName;
/**
* url
*/
private String fileUrl;
/**
*
*/
private String env;
private transient QualOnSiteReviewFileGateway qualOnSiteReviewFileGateway;
public QualOnSiteReviewFileE() {
this.qualOnSiteReviewFileGateway = SpringUtil.getBean(QualOnSiteReviewFileGateway.class);
}
public static QualOnSiteReviewFileE of() {
return DomainFactory.create(QualOnSiteReviewFileE.class);
}
public boolean add() {
return qualOnSiteReviewFileGateway.add(this);
}
public boolean update() {
return qualOnSiteReviewFileGateway.update(this);
}
}

View File

@ -0,0 +1,53 @@
package org.qinan.safetyeval.infrastructure.convertor;
import org.mapstruct.Mapper;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFilePageQry;
import org.qinan.safetyeval.client.file.response.QualOnSiteReviewFileCo;
import org.qinan.safetyeval.domain.file.model.QualOnSiteReviewFileE;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewFileDO;
import java.util.List;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Mapper(componentModel = "spring")
public interface QualOnSiteReviewFileDoConvertor {
/**
* DO
*
* @param qualOnSiteReviewFileE
* @return
*/
QualOnSiteReviewFileDO convertEeToDo(QualOnSiteReviewFileE qualOnSiteReviewFileE);
/**
* DOCo
*
* @param qualOnSiteReviewFileDo DO
* @return
*/
QualOnSiteReviewFileCo converDoToCo(QualOnSiteReviewFileDO qualOnSiteReviewFileDo);
/**
* qry TO DO
*
* @param qualOnSiteReviewFilePageQry
* @return
*/
QualOnSiteReviewFileDO convertQryToDo(QualOnSiteReviewFilePageQry qualOnSiteReviewFilePageQry);
/**
* DOsCos
*
* @param qualOnSiteReviewFileDos dos
* @return
*/
List<QualOnSiteReviewFileCo> converDosToCos(List<QualOnSiteReviewFileDO> qualOnSiteReviewFileDos);
}

View File

@ -0,0 +1,48 @@
package org.qinan.safetyeval.infrastructure.gateway;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.domain.file.gateway.QualOnSiteReviewFileGateway;
import org.qinan.safetyeval.domain.file.model.QualOnSiteReviewFileE;
import org.qinan.safetyeval.infrastructure.convertor.QualOnSiteReviewFileDoConvertor;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewFileDO;
import org.qinan.safetyeval.infrastructure.persistence.repository.QualOnSiteReviewFileRepository;
import org.springframework.stereotype.Service;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Service
@AllArgsConstructor
public class QualOnSiteReviewFileGatewayImpl implements QualOnSiteReviewFileGateway {
private final QualOnSiteReviewFileRepository qualOnSiteReviewFileRepository;
private final QualOnSiteReviewFileDoConvertor qualOnSiteReviewFileDoConvertor;
@Override
public Boolean add(QualOnSiteReviewFileE qualOnSiteReviewFileE) {
QualOnSiteReviewFileDO qualOnSiteReviewFileDO = qualOnSiteReviewFileDoConvertor.convertEeToDo(qualOnSiteReviewFileE);
boolean res = qualOnSiteReviewFileRepository.addQualOnSiteReviewFile(qualOnSiteReviewFileDO);
if (res) {
qualOnSiteReviewFileE.setId(qualOnSiteReviewFileDO.getId());
}
return res;
}
@Override
public Boolean update(QualOnSiteReviewFileE qualOnSiteReviewFileE) {
boolean res = qualOnSiteReviewFileRepository.updateQualOnSiteReviewFile(qualOnSiteReviewFileDoConvertor.convertEeToDo(qualOnSiteReviewFileE));
return res;
}
@Override
public Boolean deletedQualOnSiteReviewFileById(Long id) {
return qualOnSiteReviewFileRepository.deletedQualOnSiteReviewFileById(id);
}
@Override
public Boolean deletedQualOnSiteReviewFileByIds(Long[] ids) {
return qualOnSiteReviewFileRepository.deletedQualOnSiteReviewFileByIds(ids);
}
}

View File

@ -0,0 +1,36 @@
package org.qinan.safetyeval.infrastructure.persistence.domainobject;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jjb.saas.framework.repository.basedo.BaseDO;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("qual_on_site_review_file")
public class QualOnSiteReviewFileDO extends BaseDO {
private static final long serialVersionUID = 1L;
/**
* id
*/
private Long qualOnSiteReviewId;
/**
*
*/
private String fileName;
/**
* url
*/
private String fileUrl;
/**
*
*/
private String env;
}

View File

@ -0,0 +1,15 @@
package org.qinan.safetyeval.infrastructure.persistence.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewFileDO;
/**
* -Mapper
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Mapper
public interface QualOnSiteReviewFileMapper extends BaseMapper<QualOnSiteReviewFileDO> {
}

View File

@ -0,0 +1,31 @@
package org.qinan.safetyeval.infrastructure.persistence.queryservice;
import com.alibaba.cola.dto.PageResponse;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFilePageQry;
import org.qinan.safetyeval.client.file.response.QualOnSiteReviewFileCo;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewFileDO;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
public interface QualOnSiteReviewFileQueryService {
/**
* ID
*
* @param id -ID
* @return
*/
QualOnSiteReviewFileDO getById(Long id);
/**
* -
*
* @param qualOnSiteReviewFilePageQry Qry
* @return
*/
PageResponse<QualOnSiteReviewFileCo> listQualOnSiteReviewFilePage(QualOnSiteReviewFilePageQry qualOnSiteReviewFilePageQry);
}

View File

@ -0,0 +1,42 @@
package org.qinan.safetyeval.infrastructure.persistence.queryservice.impl;
import com.alibaba.cola.dto.PageResponse;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.repository.common.PageHelper;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFilePageQry;
import org.qinan.safetyeval.client.file.response.QualOnSiteReviewFileCo;
import org.qinan.safetyeval.infrastructure.convertor.QualOnSiteReviewFileDoConvertor;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewFileDO;
import org.qinan.safetyeval.infrastructure.persistence.queryservice.QualOnSiteReviewFileQueryService;
import org.qinan.safetyeval.infrastructure.persistence.repository.QualOnSiteReviewFileRepository;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Service
@AllArgsConstructor
public class QualOnSiteReviewFileQueryServiceImpl implements QualOnSiteReviewFileQueryService {
private final QualOnSiteReviewFileRepository qualOnSiteReviewFileRepository;
private final QualOnSiteReviewFileDoConvertor qualOnSiteReviewFileDoConvertor;
@Override
public QualOnSiteReviewFileDO getById(Long id) {
return qualOnSiteReviewFileRepository.getById(id);
}
@Override
public PageResponse<QualOnSiteReviewFileCo> listQualOnSiteReviewFilePage(QualOnSiteReviewFilePageQry qualOnSiteReviewFilePageQry) {
IPage<QualOnSiteReviewFileDO> qualOnSiteReviewFileDoPage = qualOnSiteReviewFileRepository.listQualOnSiteReviewFilePage(PageHelper.queryToPage(qualOnSiteReviewFilePageQry), qualOnSiteReviewFilePageQry);
List<QualOnSiteReviewFileCo> qualOnSiteReviewFileCoS = qualOnSiteReviewFileDoConvertor.converDosToCos(qualOnSiteReviewFileDoPage.getRecords());
return PageHelper.pageToResponse(qualOnSiteReviewFileDoPage, qualOnSiteReviewFileCoS);
}
}

View File

@ -0,0 +1,65 @@
package org.qinan.safetyeval.infrastructure.persistence.repository;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.repository.repo.BaseRepository;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFilePageQry;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewFileDO;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
public interface QualOnSiteReviewFileRepository extends BaseRepository<QualOnSiteReviewFileDO> {
/**
* ID
*
* @param id -ID
* @return
*/
QualOnSiteReviewFileDO getById(Long id);
/**
* -
*
* @param iPage
* @param qualOnSiteReviewFilePageQry
* @return ipage
*/
IPage<QualOnSiteReviewFileDO> listQualOnSiteReviewFilePage(IPage iPage, QualOnSiteReviewFilePageQry qualOnSiteReviewFilePageQry);
/**
* -
*
* @param qualOnSiteReviewFileDO -
* @return
*/
Boolean addQualOnSiteReviewFile(QualOnSiteReviewFileDO qualOnSiteReviewFileDO);
/**
* -
*
* @param qualOnSiteReviewFileDO -
* @return
*/
Boolean updateQualOnSiteReviewFile(QualOnSiteReviewFileDO qualOnSiteReviewFileDO);
/**
* -
*
* @param id
* @return
*/
Boolean deletedQualOnSiteReviewFileById(Long id);
/**
* -
*
* @param ids
* @return
*/
Boolean deletedQualOnSiteReviewFileByIds(Long[] ids);
}

View File

@ -0,0 +1,72 @@
package org.qinan.safetyeval.infrastructure.persistence.repository.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.jjb.saas.framework.enums.enums.BooleanEnum;
import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.client.file.request.QualOnSiteReviewFilePageQry;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewFileDO;
import org.qinan.safetyeval.infrastructure.persistence.mapper.QualOnSiteReviewFileMapper;
import org.qinan.safetyeval.infrastructure.persistence.repository.QualOnSiteReviewFileRepository;
import org.springframework.stereotype.Service;
import java.util.Arrays;
/**
* -
*
* @Author: ltq
* @date 2026-07-20 14:28:24
*/
@Service
@AllArgsConstructor
public class QualOnSiteReviewFileRepositoryImpl extends BaseRepositoryImpl<QualOnSiteReviewFileMapper, QualOnSiteReviewFileDO> implements QualOnSiteReviewFileRepository {
private final QualOnSiteReviewFileMapper qualOnSiteReviewFileMapper;
@Override
public QualOnSiteReviewFileDO getById(Long id) {
return super.lambdaQuery().eq(QualOnSiteReviewFileDO::getId, id).eq(QualOnSiteReviewFileDO::getDeleteEnum, BooleanEnum.FALSE.getValue()).one();
}
@Override
public IPage<QualOnSiteReviewFileDO> listQualOnSiteReviewFilePage(IPage iPage, QualOnSiteReviewFilePageQry qualOnSiteReviewFilePageQry) {
QueryWrapper<QualOnSiteReviewFileDO> qualOnSiteReviewFileDoQueryWrapper = new QueryWrapper<>();
if (ObjectUtil.isNotEmpty(qualOnSiteReviewFilePageQry.getQualOnSiteReviewId())) {
qualOnSiteReviewFileDoQueryWrapper.eq("qual_on_site_review_id", qualOnSiteReviewFilePageQry.getQualOnSiteReviewId());
}
if (ObjectUtil.isNotEmpty(qualOnSiteReviewFilePageQry.getFileName())) {
qualOnSiteReviewFileDoQueryWrapper.like("file_name", qualOnSiteReviewFilePageQry.getFileName());
}
if (ObjectUtil.isNotEmpty(qualOnSiteReviewFilePageQry.getFileUrl())) {
qualOnSiteReviewFileDoQueryWrapper.eq("file_url", qualOnSiteReviewFilePageQry.getFileUrl());
}
if (ObjectUtil.isNotEmpty(qualOnSiteReviewFilePageQry.getEnv())) {
qualOnSiteReviewFileDoQueryWrapper.eq("env", qualOnSiteReviewFilePageQry.getEnv());
}
qualOnSiteReviewFileDoQueryWrapper.eq("delete_enum", BooleanEnum.FALSE.getValue());
return qualOnSiteReviewFileMapper.selectPage(iPage, qualOnSiteReviewFileDoQueryWrapper);
}
@Override
public Boolean addQualOnSiteReviewFile(QualOnSiteReviewFileDO qualOnSiteReviewFileDO) {
return super.save(qualOnSiteReviewFileDO);
}
@Override
public Boolean updateQualOnSiteReviewFile(QualOnSiteReviewFileDO qualOnSiteReviewFileDO) {
return super.updateById(qualOnSiteReviewFileDO);
}
@Override
public Boolean deletedQualOnSiteReviewFileById(Long id) {
return super.removeEnById(id);
}
@Override
public Boolean deletedQualOnSiteReviewFileByIds(Long[] ids) {
return super.removeBatchEnByIds(Arrays.asList(ids));
}
}

View File

@ -0,0 +1,43 @@
<?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="org.qinan.safetyeval.infrastructure.persistence.mapper.QualOnSiteReviewFileMapper">
<resultMap type="org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewFileDO"
id="QualOnSiteReviewFileResult">
<id property="id" column="id"/>
<result property="qualOnSiteReviewId" column="qual_on_site_review_id"/>
<result property="fileName" column="file_name"/>
<result property="fileUrl" column="file_url"/>
<result property="deleteEnum" column="delete_enum"/>
<result property="remarks" column="remarks"/>
<result property="createName" column="create_name"/>
<result property="updateName" column="update_name"/>
<result property="tenantId" column="tenant_id"/>
<result property="version" column="version"/>
<result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time"/>
<result property="createId" column="create_id"/>
<result property="updateId" column="update_id"/>
<result property="env" column="env"/>
</resultMap>
<sql id="selectQualOnSiteReviewFile">
select id,
qual_on_site_review_id,
file_name,
file_url,
delete_enum,
remarks,
create_name,
update_name,
tenant_id,
version,
create_time,
update_time,
create_id,
update_id,
env
from qual_on_site_review_file
</sql>
</mapper>