luotaiqian 2026-07-20 16:29:01 +08:00
parent a4d69d0b93
commit 850057bacb
10 changed files with 250 additions and 42 deletions

View File

@ -9,10 +9,13 @@ import lombok.AllArgsConstructor;
import org.qinan.safetyeval.app.review.service.QualOnSiteReviewServiceI;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewAddCmd;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewMonitorPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewOrgPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewUpdateCmd;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewMonitorCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewOrgCo;
import org.qinan.safetyeval.infrastructure.adapter.ThreadLocalUserInfoAdapter;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
@ -46,6 +49,14 @@ public class QualOnSiteReviewController implements Serializable {
return qualOnSiteReviewServiceI.monitorPage(qry);
}
@GetMapping("/org/page")
@ApiOperation("机构端-查询资质现场核查列表-分页")
public org.qinan.safetyeval.client.dto.PageResponse<QualOnSiteReviewOrgCo> orgPage(@Validated QualOnSiteReviewOrgPageQry qry) {
Long orgId = ThreadLocalUserInfoAdapter.getOrgId();
qry.setOrgId(orgId);
return qualOnSiteReviewServiceI.orgPage(qry);
}
@GetMapping("/{id}")
@ApiOperation("查询资质现场核查详情页面")
public SingleResponse<QualOnSiteReviewCo> getInfo(@PathVariable("id") Long id) {

View File

@ -1,37 +0,0 @@
package org.qinan.safetyeval.app.review.executor.query;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.client.dto.PageResponse;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewMonitorPageQry;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewMonitorCo;
import org.qinan.safetyeval.infrastructure.persistence.mapper.QualOnSiteReviewMapper;
import org.springframework.stereotype.Component;
import java.util.List;
/**
*
*
* @Author: ltq
* @date 2026-07-20 15:17:00
*/
@Component
@AllArgsConstructor
public class QualOnSiteReviewMonitorPageQueryExe {
private final QualOnSiteReviewMapper qualOnSiteReviewMapper;
/**
* Co
*
* @param qry
* @return
*/
public org.qinan.safetyeval.client.dto.PageResponse<QualOnSiteReviewMonitorCo> execute(QualOnSiteReviewMonitorPageQry qry) {
Page<QualOnSiteReviewMonitorCo> page = new Page<>(qry.getCurrent(), qry.getSize());
List<QualOnSiteReviewMonitorCo> list = qualOnSiteReviewMapper.monitorPage(page, qry);
return PageResponse.of(list, page.getTotal());
}
}

View File

@ -1,12 +1,20 @@
package org.qinan.safetyeval.app.review.executor.query;
import com.alibaba.cola.dto.PageResponse;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewMonitorPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewOrgPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewPageQry;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewMonitorCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewOrgCo;
import org.qinan.safetyeval.infrastructure.persistence.mapper.QualOnSiteReviewMapper;
import org.qinan.safetyeval.infrastructure.persistence.queryservice.QualOnSiteReviewQueryService;
import org.springframework.stereotype.Component;
import java.util.List;
/**
*
*
@ -18,15 +26,40 @@ import org.springframework.stereotype.Component;
public class QualOnSiteReviewPageQueryExe {
private final QualOnSiteReviewQueryService qualOnSiteReviewQueryService;
private final QualOnSiteReviewMapper qualOnSiteReviewMapper;
/**
*
*
* @param qualOnSiteReviewPageQry
* @return
* @param qualOnSiteReviewPageQry
* @return
*/
public PageResponse<QualOnSiteReviewCo> execute(QualOnSiteReviewPageQry qualOnSiteReviewPageQry) {
return qualOnSiteReviewQueryService.listQualOnSiteReviewPage(qualOnSiteReviewPageQry);
}
/**
* Co
*
* @param qry
* @return
*/
public org.qinan.safetyeval.client.dto.PageResponse<QualOnSiteReviewMonitorCo> execute(QualOnSiteReviewMonitorPageQry qry) {
Page<QualOnSiteReviewMonitorCo> page = new Page<>(qry.getCurrent(), qry.getSize());
List<QualOnSiteReviewMonitorCo> list = qualOnSiteReviewMapper.monitorPage(page, qry);
return org.qinan.safetyeval.client.dto.PageResponse.of(list, page.getTotal());
}
/**
* IDCo
*
* @param qry
* @return
*/
public org.qinan.safetyeval.client.dto.PageResponse<QualOnSiteReviewOrgCo> execute(QualOnSiteReviewOrgPageQry qry) {
Page<QualOnSiteReviewOrgCo> page = new Page<>(qry.getCurrent(), qry.getSize());
List<QualOnSiteReviewOrgCo> list = qualOnSiteReviewMapper.orgPage(page, qry);
return org.qinan.safetyeval.client.dto.PageResponse.of(list, page.getTotal());
}
}

View File

@ -3,10 +3,12 @@ package org.qinan.safetyeval.app.review.service;
import com.alibaba.cola.dto.PageResponse;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewAddCmd;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewMonitorPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewOrgPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewUpdateCmd;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewMonitorCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewOrgCo;
/**
*
@ -31,6 +33,14 @@ public interface QualOnSiteReviewServiceI {
*/
org.qinan.safetyeval.client.dto.PageResponse<QualOnSiteReviewMonitorCo> monitorPage(QualOnSiteReviewMonitorPageQry qualOnSiteReviewMonitorPageQry);
/**
* ID
*
* @param qualOnSiteReviewOrgPageQry
* @return
*/
org.qinan.safetyeval.client.dto.PageResponse<QualOnSiteReviewOrgCo> orgPage(QualOnSiteReviewOrgPageQry qualOnSiteReviewOrgPageQry);
/**
* ID
*

View File

@ -6,15 +6,16 @@ import org.qinan.safetyeval.app.review.executor.command.QualOnSiteReviewAddCmdEx
import org.qinan.safetyeval.app.review.executor.command.QualOnSiteReviewDelCmdExe;
import org.qinan.safetyeval.app.review.executor.command.QualOnSiteReviewUpdateCmdExe;
import org.qinan.safetyeval.app.review.executor.query.QualOnSiteReviewListQueryExe;
import org.qinan.safetyeval.app.review.executor.query.QualOnSiteReviewMonitorPageQueryExe;
import org.qinan.safetyeval.app.review.executor.query.QualOnSiteReviewPageQueryExe;
import org.qinan.safetyeval.app.review.service.QualOnSiteReviewServiceI;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewAddCmd;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewMonitorPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewOrgPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewUpdateCmd;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewMonitorCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewOrgCo;
import org.springframework.stereotype.Service;
/**
@ -32,7 +33,6 @@ public class QualOnSiteReviewServiceImpl implements QualOnSiteReviewServiceI {
private final QualOnSiteReviewAddCmdExe qualOnSiteReviewAddCommandExe;
private final QualOnSiteReviewDelCmdExe qualOnSiteReviewDelCommandExe;
private final QualOnSiteReviewPageQueryExe qualOnSiteReviewPageQueryExe;
private final QualOnSiteReviewMonitorPageQueryExe qualOnSiteReviewMonitorPageQueryExe;
@Override
public PageResponse<QualOnSiteReviewCo> listQualOnSiteReviewPage(QualOnSiteReviewPageQry qualOnSiteReviewPageQry) {
@ -41,7 +41,12 @@ public class QualOnSiteReviewServiceImpl implements QualOnSiteReviewServiceI {
@Override
public org.qinan.safetyeval.client.dto.PageResponse<QualOnSiteReviewMonitorCo> monitorPage(QualOnSiteReviewMonitorPageQry qualOnSiteReviewMonitorPageQry) {
return qualOnSiteReviewMonitorPageQueryExe.execute(qualOnSiteReviewMonitorPageQry);
return qualOnSiteReviewPageQueryExe.execute(qualOnSiteReviewMonitorPageQry);
}
@Override
public org.qinan.safetyeval.client.dto.PageResponse<QualOnSiteReviewOrgCo> orgPage(QualOnSiteReviewOrgPageQry qualOnSiteReviewOrgPageQry) {
return qualOnSiteReviewPageQueryExe.execute(qualOnSiteReviewOrgPageQry);
}
@Override

View File

@ -5,6 +5,8 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import org.qinan.safetyeval.client.dto.BasePageQuery;
import java.time.LocalDateTime;
/**
* Qry
*
@ -22,4 +24,22 @@ public class QualOnSiteReviewMonitorPageQry extends BasePageQuery {
@ApiModelProperty(value = "机构名称(模糊查询)")
private String unitName;
/**
* (AGENCY_PENDING_CONFIRMATIONAGENCY_CONFIRMEDREVIEW_PASSEDREVIEW_FAILED)
*/
@ApiModelProperty(value = "现场审查状态(AGENCY_PENDING_CONFIRMATION机构待确认、AGENCY_CONFIRMED机构已确认、REVIEW_PASSED核查通过、REVIEW_FAILED核查不通过)")
private Long status;
/**
* -
*/
@ApiModelProperty(value = "现场审查开始时间-起始")
private LocalDateTime reviewDateStartBegin;
/**
* -
*/
@ApiModelProperty(value = "现场审查开始时间-结束")
private LocalDateTime reviewDateStartEnd;
}

View File

@ -0,0 +1,47 @@
package org.qinan.safetyeval.client.review.request;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.qinan.safetyeval.client.dto.BasePageQuery;
import java.time.LocalDateTime;
/**
* Qry
*
* @Author: ltq
* @date 2026-07-20 15:17:00
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class QualOnSiteReviewOrgPageQry extends BasePageQuery {
private static final long serialVersionUID = 1L;
/**
* ID
*/
@ApiModelProperty(value = "机构ID", hidden = true)
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long orgId;
/**
* (AGENCY_PENDING_CONFIRMATIONAGENCY_CONFIRMEDREVIEW_PASSEDREVIEW_FAILED)
*/
@ApiModelProperty(value = "现场审查状态(AGENCY_PENDING_CONFIRMATION机构待确认、AGENCY_CONFIRMED机构已确认、REVIEW_PASSED核查通过、REVIEW_FAILED核查不通过)")
private Long status;
/**
* -
*/
@ApiModelProperty(value = "现场审查开始时间-起始")
private LocalDateTime reviewDateStartBegin;
/**
* -
*/
@ApiModelProperty(value = "现场审查开始时间-结束")
private LocalDateTime reviewDateStartEnd;
}

View File

@ -0,0 +1,76 @@
package org.qinan.safetyeval.client.review.response;
import com.alibaba.cola.dto.ClientObject;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* Co
*
* @Author: ltq
* @date 2026-07-20 15:17:00
*/
@Data
public class QualOnSiteReviewOrgCo extends ClientObject {
private static final long serialVersionUID = 1L;
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long id;
/**
* :add change:
*/
@ApiModelProperty(value = "资质类型:add 新增 change:变更")
private String bizType;
/**
* id
*/
@ApiModelProperty(value = "业务id")
@JsonFormat(shape = JsonFormat.Shape.STRING)
private Long bizId;
/**
*
*/
@ApiModelProperty(value = "现场审查开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private LocalDateTime reviewDateStart;
/**
*
*/
@ApiModelProperty(value = "审查地点")
private String reviewLocation;
/**
*
*/
@ApiModelProperty(value = "审查组成员名单")
private String reviewMembers;
/**
*
*/
@ApiModelProperty(value = "材料准备要求")
private String materialRequirements;
/**
*
*/
@ApiModelProperty(value = "监管联系人姓名")
private String supervisorContact;
/**
*
*/
@ApiModelProperty(value = "监管联系电话")
private String contactPhone;
/**
* (AGENCY_PENDING_CONFIRMATIONAGENCY_CONFIRMEDREVIEW_PASSEDREVIEW_FAILED)
*/
@ApiModelProperty(value = "现场审查状态(AGENCY_PENDING_CONFIRMATION机构待确认、AGENCY_CONFIRMED机构已确认、REVIEW_PASSED核查通过、REVIEW_FAILED核查不通过)")
private Long status;
/**
*
*/
@ApiModelProperty(value = "环境")
private String env;
@ApiModelProperty(value = "version")
private Integer version;
}

View File

@ -5,7 +5,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewMonitorPageQry;
import org.qinan.safetyeval.client.review.request.QualOnSiteReviewOrgPageQry;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewMonitorCo;
import org.qinan.safetyeval.client.review.response.QualOnSiteReviewOrgCo;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualOnSiteReviewDO;
import java.util.List;
@ -21,4 +24,7 @@ public interface QualOnSiteReviewMapper extends BaseMapper<QualOnSiteReviewDO> {
List<QualOnSiteReviewMonitorCo> monitorPage(@Param("page") Page<QualOnSiteReviewMonitorCo> page,
@Param("query") QualOnSiteReviewMonitorPageQry query);
List<QualOnSiteReviewOrgCo> orgPage(@Param("page") Page<QualOnSiteReviewOrgCo> page,
@Param("query") QualOnSiteReviewOrgPageQry query);
}

View File

@ -64,6 +64,43 @@
<if test="query.unitName != null and query.unitName != ''">
and info.unit_name like concat('%', #{query.unitName}, '%')
</if>
<if test="query.status != null">
and review.status = #{query.status}
</if>
<if test="query.reviewDateStartBegin != null">
and review.review_date_start &gt;= #{query.reviewDateStartBegin}
</if>
<if test="query.reviewDateStartEnd != null">
and review.review_date_start &lt;= #{query.reviewDateStartEnd}
</if>
order by review.id desc
</select>
<select id="orgPage" resultType="org.qinan.safetyeval.client.review.response.QualOnSiteReviewOrgCo">
select review.id,
review.biz_type,
review.biz_id,
review.review_date_start,
review.review_location,
review.review_members,
review.material_requirements,
review.supervisor_contact,
review.contact_phone,
review.status,
review.env,
review.version
from qual_on_site_review review
where review.delete_enum = 'false'
and review.org_id = #{query.orgId}
<if test="query.status != null">
and review.status = #{query.status}
</if>
<if test="query.reviewDateStartBegin != null">
and review.review_date_start &gt;= #{query.reviewDateStartBegin}
</if>
<if test="query.reviewDateStartEnd != null">
and review.review_date_start &lt;= #{query.reviewDateStartEnd}
</if>
order by review.id desc
</select>
</mapper>