Merge branch 'feature/REQ-3488-zhh' into 'feature/REQ-3488'
Feature/req 3488 zhh See merge request universal/infrastructure/backend/orgmanax!45
This commit is contained in:
commit
e169a0a178
@ -4,6 +4,8 @@ package cn.axzo.orgmanax.api.unit.feign;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.foundation.result.ApiResult;
|
||||
import cn.axzo.orgmanax.dto.unit.register.dto.OrgUnitRegisterDTO;
|
||||
import cn.axzo.orgmanax.dto.unit.register.dto.OrgUnitRegisterHistoryDTO;
|
||||
import cn.axzo.orgmanax.dto.unit.register.req.ListUnitRegisterHistoryReq;
|
||||
import cn.axzo.orgmanax.dto.unit.register.req.ListUnitRegisterReq;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
@ -26,4 +28,10 @@ public interface OrgUnitRegisterApi {
|
||||
@PostMapping("/api/org/unit/register/list")
|
||||
ApiResult<PageResp<OrgUnitRegisterDTO>> list(@RequestBody @Validated ListUnitRegisterReq req);
|
||||
|
||||
}
|
||||
/**
|
||||
* 分页获取企业入驻历史信息
|
||||
*/
|
||||
@PostMapping("/api/org/unit/register/history/list")
|
||||
ApiResult<PageResp<OrgUnitRegisterHistoryDTO>> listHistory(@RequestBody @Validated ListUnitRegisterHistoryReq req);
|
||||
|
||||
}
|
||||
@ -0,0 +1,52 @@
|
||||
package cn.axzo.orgmanax.dto.unit.register.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
@Accessors(chain = true)
|
||||
public class OrgUnitRegisterContactDTO implements Serializable {
|
||||
|
||||
/**
|
||||
* 联系人id(新增时不传,修改时需要传)
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 单位id
|
||||
*/
|
||||
|
||||
private Long organizationalUnitId;
|
||||
|
||||
/**
|
||||
* 联系人姓名
|
||||
*/
|
||||
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 联系人手机号码
|
||||
*/
|
||||
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 联系人职务
|
||||
*/
|
||||
|
||||
private String position;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
|
||||
private String memo;
|
||||
}
|
||||
@ -7,6 +7,7 @@ import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@NoArgsConstructor
|
||||
@SuperBuilder
|
||||
@ -18,6 +19,10 @@ public class OrgUnitRegisterDTO implements Serializable {
|
||||
* 主键id
|
||||
*/
|
||||
private long id;
|
||||
/**
|
||||
* 单位id(审批通过时有效)
|
||||
*/
|
||||
private Long ouId;
|
||||
|
||||
/**
|
||||
* 单位名称
|
||||
@ -28,6 +33,10 @@ public class OrgUnitRegisterDTO implements Serializable {
|
||||
* 提交时间
|
||||
*/
|
||||
private Date submissionTime;
|
||||
/**
|
||||
* 审批时间
|
||||
*/
|
||||
private Date approvalTime;
|
||||
|
||||
/**
|
||||
* 状态:0:已撤销 ,10:审核中,20:审核拒绝,30:审核通过
|
||||
@ -59,4 +68,24 @@ public class OrgUnitRegisterDTO implements Serializable {
|
||||
*/
|
||||
private Integer registerType;
|
||||
|
||||
/**
|
||||
* 用户确认状态 1已确认(有用户确认时间) 2未确认
|
||||
*/
|
||||
private Integer confirmStatus = 2;
|
||||
|
||||
/**
|
||||
* 操作日志
|
||||
*/
|
||||
private List<OrgUnitRegisterLogDTO> ouRegisterLogs;
|
||||
|
||||
/**
|
||||
* 主要人员信息
|
||||
*/
|
||||
private List<OrgUnitRegisterContactDTO> contactList;
|
||||
|
||||
/**
|
||||
* 团队类型个人实名数据 {name:"姓名",phone:"手机号",idNumber:"身份证号",idFrontPhoto:"身份证正面照",idBackPhoto:"身份证反面照",faceUrl:"人脸照片"}
|
||||
*/
|
||||
private OrgUnitRegisterRealNameDTO corpsRealNameObj;
|
||||
|
||||
}
|
||||
@ -0,0 +1,52 @@
|
||||
package cn.axzo.orgmanax.dto.unit.register.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class OrgUnitRegisterHistoryDTO {
|
||||
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 单位注册记录id
|
||||
*/
|
||||
private String applyNum;
|
||||
|
||||
/**
|
||||
* 企业统一社会信用代码
|
||||
*/
|
||||
private String usccNumber;
|
||||
|
||||
/**
|
||||
* 动作类型 1、提交申请 2、重新提交 3、审核通过 4、审核拒绝
|
||||
*/
|
||||
private Integer activeType;
|
||||
|
||||
/**
|
||||
* 操作人身份id
|
||||
*/
|
||||
private Long actorId;
|
||||
|
||||
/**
|
||||
* 操作人姓名
|
||||
*/
|
||||
private String actorName;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String comment;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createAt;
|
||||
|
||||
/**
|
||||
* 申请人手机号
|
||||
*/
|
||||
private String applyPhone;
|
||||
|
||||
}
|
||||
@ -0,0 +1,21 @@
|
||||
package cn.axzo.orgmanax.dto.unit.register.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 单位注册操作日志
|
||||
*/
|
||||
@Data
|
||||
public class OrgUnitRegisterLogDTO {
|
||||
|
||||
/**
|
||||
* 动作类型: 1:资料完善 2:协议勾选 3:审核中(提交) 4:审核完成(通过/拒绝)
|
||||
*/
|
||||
private Integer type;
|
||||
|
||||
/**
|
||||
* 动作发生时间
|
||||
*/
|
||||
private Long time;
|
||||
|
||||
}
|
||||
@ -0,0 +1,41 @@
|
||||
package cn.axzo.orgmanax.dto.unit.register.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 实名制
|
||||
*/
|
||||
@Data
|
||||
public class OrgUnitRegisterRealNameDTO {
|
||||
|
||||
/**
|
||||
* 姓名
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 身份证号
|
||||
*/
|
||||
private String idNumber;
|
||||
|
||||
/**
|
||||
* 身份证正面照
|
||||
*/
|
||||
private String idFrontPhoto;
|
||||
|
||||
/**
|
||||
* 身份证反面照
|
||||
*/
|
||||
private String idBackPhoto;
|
||||
|
||||
/**
|
||||
* 人脸照片
|
||||
*/
|
||||
private String faceUrl;
|
||||
|
||||
}
|
||||
@ -0,0 +1,30 @@
|
||||
package cn.axzo.orgmanax.dto.unit.register.req;
|
||||
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
/**
|
||||
* @author : zhanghonghao@axzo.cn
|
||||
* @since : 2024/12/26
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class ListUnitRegisterHistoryReq extends PageReqV2 {
|
||||
|
||||
/**
|
||||
* 统一社会信用代码
|
||||
*/
|
||||
private String usccNumber;
|
||||
|
||||
/**
|
||||
* 申请人手机号
|
||||
*/
|
||||
private String applyPhone;
|
||||
}
|
||||
@ -62,4 +62,23 @@ public class ListUnitRegisterReq extends PageReqV2 {
|
||||
**/
|
||||
private Integer registerType;
|
||||
|
||||
/**
|
||||
* 统一社会信用代码
|
||||
*/
|
||||
private String uniformSocialCreditCode;
|
||||
|
||||
/**
|
||||
* 单位id
|
||||
*/
|
||||
private Long organizationalUnitId;
|
||||
|
||||
/**
|
||||
* 工作流实例id
|
||||
*/
|
||||
private String processInstanceId;
|
||||
|
||||
/**
|
||||
* 联系人&提交人手机号
|
||||
*/
|
||||
private String contactPhone;
|
||||
}
|
||||
@ -0,0 +1,15 @@
|
||||
package cn.axzo.orgmanax.infra.dao.register.dao;
|
||||
|
||||
import cn.axzo.orgmanax.infra.dao.register.entity.OuRegisterHistory;
|
||||
import cn.axzo.orgmanax.infra.dao.register.mapper.OuRegisterHistoryMapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* @author : zhanghonghao@axzo.cn
|
||||
* @since : 2024/12/26
|
||||
*/
|
||||
@Repository
|
||||
public class OuRegisterHistoryDao extends ServiceImpl<OuRegisterHistoryMapper, OuRegisterHistory> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,87 @@
|
||||
package cn.axzo.orgmanax.infra.dao.register.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.*;
|
||||
import lombok.experimental.Accessors;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 企业入驻历史
|
||||
*
|
||||
* @author makejava
|
||||
* @since 2022-06-05 10:59:30
|
||||
*/
|
||||
@Data
|
||||
@TableName(value = "ou_register_history", autoResultMap = true)
|
||||
@Accessors(chain = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@SuperBuilder
|
||||
@ToString(callSuper = true)
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
public class OuRegisterHistory implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = -92011957938725711L;
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 单位注册记录id
|
||||
*/
|
||||
private String applyNum;
|
||||
|
||||
/**
|
||||
* 企业统一社会信用代码
|
||||
*/
|
||||
private String usccNumber;
|
||||
|
||||
/**
|
||||
* 动作类型 1、提交申请 2、重新提交 3、审核通过 4、审核拒绝
|
||||
*/
|
||||
private Integer activeType;
|
||||
|
||||
/**
|
||||
* 操作人身份id
|
||||
*/
|
||||
private Long actorId;
|
||||
|
||||
/**
|
||||
* 操作人姓名
|
||||
*/
|
||||
private String actorName;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String comment;
|
||||
|
||||
/**
|
||||
* 申请人手机号
|
||||
*/
|
||||
private String applyPhone;
|
||||
|
||||
/**
|
||||
* 是否删除 0否,其他是
|
||||
*/
|
||||
private Long isDelete = 0L;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createAt;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private Date updateAt;
|
||||
}
|
||||
|
||||
@ -0,0 +1,10 @@
|
||||
package cn.axzo.orgmanax.infra.dao.register.mapper;
|
||||
|
||||
import cn.axzo.orgmanax.infra.dao.register.entity.OuRegisterHistory;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface OuRegisterHistoryMapper extends BaseMapper<OuRegisterHistory> {
|
||||
|
||||
}
|
||||
@ -1,4 +1,137 @@
|
||||
package cn.axzo.orgmanax.infra.dao.register.repository;
|
||||
|
||||
import cn.axzo.foundation.dao.support.wrapper.CriteriaField;
|
||||
import cn.axzo.foundation.dao.support.wrapper.Operator;
|
||||
import cn.axzo.foundation.page.IPageReq;
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.infra.dao.register.entity.OrganizationalUnitRegister;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
|
||||
public interface OrganizationalUnitRegisterQueryRepository {
|
||||
|
||||
PageResp<OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp> page(OrganizationalUnitRegisterQueryRepository.ListReq paramReq);
|
||||
|
||||
default List<OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp> list(OrganizationalUnitRegisterQueryRepository.ListReq req) {
|
||||
OrganizationalUnitRegisterQueryRepository.PageReq pageReq = BeanUtil.toBean(req, OrganizationalUnitRegisterQueryRepository.PageReq.class);
|
||||
pageReq.setPage(1);
|
||||
pageReq.setPageSize(1000);
|
||||
return page(pageReq).getData();
|
||||
}
|
||||
|
||||
default OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp one(OrganizationalUnitRegisterQueryRepository.OneReq req) {
|
||||
return oneOpt(req).orElse(null);
|
||||
}
|
||||
|
||||
default Optional<OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp> oneOpt(OrganizationalUnitRegisterQueryRepository.OneReq req) {
|
||||
req.check();
|
||||
OrganizationalUnitRegisterQueryRepository.PageReq page = BeanUtil.toBean(req, OrganizationalUnitRegisterQueryRepository.PageReq.class);
|
||||
page.setPage(1);
|
||||
page.setPageSize(1);
|
||||
return page(page).getData().stream().findFirst();
|
||||
}
|
||||
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class OneReq {
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* id集合
|
||||
*/
|
||||
private Set<Long> ids;
|
||||
|
||||
/**
|
||||
* 企业主体类型(冗余查询用)
|
||||
*/
|
||||
private Integer mainBodyType;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
public void check() {
|
||||
}
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class ListReq extends PageReqV2 {
|
||||
@CriteriaField
|
||||
private Long id;
|
||||
@CriteriaField(field = "id", operator = Operator.IN)
|
||||
private Set<Long> ids;
|
||||
/**
|
||||
* 用于遍历数据
|
||||
*/
|
||||
@CriteriaField(field = "id", operator = Operator.GT)
|
||||
private Long idGt;
|
||||
@CriteriaField(field = "approvalStatus", operator = Operator.IN)
|
||||
private Set<Integer> approvalStatusList;
|
||||
@CriteriaField(field = "name", operator = Operator.SW)
|
||||
private String nameRightLike;
|
||||
@CriteriaField
|
||||
private String name;
|
||||
@CriteriaField(field = "submissionTime", operator = Operator.GE)
|
||||
private Date submissionTimeStart;
|
||||
@CriteriaField(field = "submissionTime", operator = Operator.LE)
|
||||
private Date submissionTimeEnd;
|
||||
@CriteriaField
|
||||
private String contactPhone;
|
||||
@CriteriaField
|
||||
private Integer mainBodyType;
|
||||
@CriteriaField
|
||||
private String uniformSocialCreditCode;
|
||||
@CriteriaField
|
||||
private Long organizationalUnitId;
|
||||
@CriteriaField
|
||||
private String processInstanceId;
|
||||
@CriteriaField(ignore = true)
|
||||
private Boolean includeDeleted;
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class PageReq extends OrganizationalUnitRegisterQueryRepository.ListReq implements IPageReq {
|
||||
@CriteriaField(ignore = true)
|
||||
Integer page;
|
||||
@CriteriaField(ignore = true)
|
||||
Integer pageSize;
|
||||
@CriteriaField(ignore = true)
|
||||
List<String> sort;
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class OrganizationalUnitRegisterResp extends OrganizationalUnitRegister {
|
||||
// 按需扩展字段,占个位。避免报错
|
||||
private String todo;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,122 @@
|
||||
package cn.axzo.orgmanax.infra.dao.register.repository;
|
||||
|
||||
import cn.axzo.foundation.dao.support.wrapper.CriteriaField;
|
||||
import cn.axzo.foundation.dao.support.wrapper.Operator;
|
||||
import cn.axzo.foundation.page.IPageReq;
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.infra.dao.register.entity.OuRegisterHistory;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.Set;
|
||||
|
||||
public interface OuRegisterHistoryQueryRepository {
|
||||
|
||||
PageResp<OuRegisterHistoryQueryRepository.OuRegisterHistoryResp> page(OuRegisterHistoryQueryRepository.ListReq paramReq);
|
||||
|
||||
default List<OuRegisterHistoryQueryRepository.OuRegisterHistoryResp> list(OuRegisterHistoryQueryRepository.ListReq req) {
|
||||
OuRegisterHistoryQueryRepository.PageReq pageReq = BeanUtil.toBean(req, OuRegisterHistoryQueryRepository.PageReq.class);
|
||||
pageReq.setPage(1);
|
||||
pageReq.setPageSize(1000);
|
||||
return page(pageReq).getData();
|
||||
}
|
||||
|
||||
default OuRegisterHistoryQueryRepository.OuRegisterHistoryResp one(OuRegisterHistoryQueryRepository.OneReq req) {
|
||||
return oneOpt(req).orElse(null);
|
||||
}
|
||||
|
||||
default Optional<OuRegisterHistoryQueryRepository.OuRegisterHistoryResp> oneOpt(OuRegisterHistoryQueryRepository.OneReq req) {
|
||||
req.check();
|
||||
OuRegisterHistoryQueryRepository.PageReq page = BeanUtil.toBean(req, OuRegisterHistoryQueryRepository.PageReq.class);
|
||||
page.setPage(1);
|
||||
page.setPageSize(1);
|
||||
return page(page).getData().stream().findFirst();
|
||||
}
|
||||
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class OneReq {
|
||||
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 申请人手机号
|
||||
*/
|
||||
private String applyPhone;
|
||||
|
||||
/**
|
||||
* 企业统一社会信用代码
|
||||
*/
|
||||
private String usccNumber;
|
||||
|
||||
public void check() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class ListReq extends PageReqV2 {
|
||||
@CriteriaField
|
||||
private Long id;
|
||||
@CriteriaField(field = "id", operator = Operator.IN)
|
||||
private Set<Long> ids;
|
||||
/**
|
||||
* 用于遍历数据
|
||||
*/
|
||||
@CriteriaField(field = "id", operator = Operator.GT)
|
||||
private Long idGt;
|
||||
/**
|
||||
* 申请人手机号
|
||||
*/
|
||||
@CriteriaField
|
||||
private String applyPhone;
|
||||
|
||||
/**
|
||||
* 企业统一社会信用代码
|
||||
*/
|
||||
@CriteriaField
|
||||
private String usccNumber;
|
||||
@CriteriaField(ignore = true)
|
||||
private Boolean includeDeleted;
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class PageReq extends OuRegisterHistoryQueryRepository.ListReq implements IPageReq {
|
||||
@CriteriaField(ignore = true)
|
||||
Integer page;
|
||||
@CriteriaField(ignore = true)
|
||||
Integer pageSize;
|
||||
@CriteriaField(ignore = true)
|
||||
List<String> sort;
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class OuRegisterHistoryResp extends OuRegisterHistory {
|
||||
// 按需扩展字段,占个位。避免报错
|
||||
private String todo;
|
||||
}
|
||||
}
|
||||
@ -1,10 +1,44 @@
|
||||
package cn.axzo.orgmanax.infra.dao.register.repository.impl;
|
||||
|
||||
import cn.axzo.foundation.dao.support.converter.PageConverter;
|
||||
import cn.axzo.foundation.dao.support.mysql.QueryWrapperHelper;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.infra.dao.register.dao.OrganizationalUnitRegisterDao;
|
||||
import cn.axzo.orgmanax.infra.dao.register.entity.OrganizationalUnitRegister;
|
||||
import cn.axzo.orgmanax.infra.dao.register.repository.OrganizationalUnitRegisterQueryRepository;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.BooleanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author : zhanghonghao@axzo.cn
|
||||
* @since : 2024/12/26
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class OrganizationalUnitRegisterQueryRepositoryImpl implements OrganizationalUnitRegisterQueryRepository {
|
||||
|
||||
private final OrganizationalUnitRegisterDao organizationalUnitRegisterDao;
|
||||
|
||||
@Override
|
||||
public PageResp<OrganizationalUnitRegisterResp> page(ListReq req) {
|
||||
IPage<OrganizationalUnitRegister> page = PageConverter.toMybatis(req, OrganizationalUnitRegister.class);
|
||||
QueryWrapper<OrganizationalUnitRegister> wrapper = QueryWrapperHelper.fromBean(req, OrganizationalUnitRegister.class);
|
||||
if (!BooleanUtil.isTrue(req.getIncludeDeleted())) {
|
||||
wrapper.eq("is_delete", 0);
|
||||
}
|
||||
IPage<OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp> results = organizationalUnitRegisterDao.page(page, wrapper).convert(e -> BeanUtil.toBean(e, OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp.class));
|
||||
PageResp<OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp> resp = PageConverter.toResp(results);
|
||||
List<OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp> records = resp.getData();
|
||||
CollUtil.isEmpty(records);
|
||||
return resp;
|
||||
}
|
||||
}
|
||||
|
||||
@ -0,0 +1,44 @@
|
||||
package cn.axzo.orgmanax.infra.dao.register.repository.impl;
|
||||
|
||||
import cn.axzo.foundation.dao.support.converter.PageConverter;
|
||||
import cn.axzo.foundation.dao.support.mysql.QueryWrapperHelper;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.infra.dao.register.dao.OuRegisterHistoryDao;
|
||||
import cn.axzo.orgmanax.infra.dao.register.entity.OuRegisterHistory;
|
||||
import cn.axzo.orgmanax.infra.dao.register.repository.OuRegisterHistoryQueryRepository;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.BooleanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author : zhanghonghao@axzo.cn
|
||||
* @since : 2024/12/26
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@Slf4j
|
||||
public class OuRegisterHistoryQueryRepositoryImpl implements OuRegisterHistoryQueryRepository {
|
||||
|
||||
private final OuRegisterHistoryDao ouRegisterHistoryDao;
|
||||
|
||||
@Override
|
||||
public PageResp<OuRegisterHistoryResp> page(ListReq req) {
|
||||
IPage<OuRegisterHistory> page = PageConverter.toMybatis(req, OuRegisterHistory.class);
|
||||
QueryWrapper<OuRegisterHistory> wrapper = QueryWrapperHelper.fromBean(req, OuRegisterHistory.class);
|
||||
if (!BooleanUtil.isTrue(req.getIncludeDeleted())) {
|
||||
wrapper.eq("is_delete", 0);
|
||||
}
|
||||
IPage<OuRegisterHistoryQueryRepository.OuRegisterHistoryResp> results = ouRegisterHistoryDao.page(page, wrapper).convert(e -> BeanUtil.toBean(e, OuRegisterHistoryQueryRepository.OuRegisterHistoryResp.class));
|
||||
PageResp<OuRegisterHistoryQueryRepository.OuRegisterHistoryResp> resp = PageConverter.toResp(results);
|
||||
List<OuRegisterHistoryQueryRepository.OuRegisterHistoryResp> records = resp.getData();
|
||||
CollUtil.isEmpty(records);
|
||||
return resp;
|
||||
}
|
||||
}
|
||||
@ -4,7 +4,10 @@ import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.foundation.result.ApiResult;
|
||||
import cn.axzo.orgmanax.api.unit.feign.OrgUnitRegisterApi;
|
||||
import cn.axzo.orgmanax.dto.unit.register.dto.OrgUnitRegisterDTO;
|
||||
import cn.axzo.orgmanax.dto.unit.register.dto.OrgUnitRegisterHistoryDTO;
|
||||
import cn.axzo.orgmanax.dto.unit.register.req.ListUnitRegisterHistoryReq;
|
||||
import cn.axzo.orgmanax.dto.unit.register.req.ListUnitRegisterReq;
|
||||
import cn.axzo.orgmanax.server.unit.service.RegisterService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
@ -18,9 +21,16 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
@RequiredArgsConstructor
|
||||
public class UnitRegisterController implements OrgUnitRegisterApi {
|
||||
|
||||
private final RegisterService registerService;
|
||||
|
||||
@Override
|
||||
public ApiResult<PageResp<OrgUnitRegisterDTO>> list(ListUnitRegisterReq req) {
|
||||
return null;
|
||||
return ApiResult.success(registerService.list(req));
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResult<PageResp<OrgUnitRegisterHistoryDTO>> listHistory(ListUnitRegisterHistoryReq req) {
|
||||
return ApiResult.success(registerService.listHistory(req));
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,4 +1,17 @@
|
||||
package cn.axzo.orgmanax.server.unit.service;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.unit.register.dto.OrgUnitRegisterDTO;
|
||||
import cn.axzo.orgmanax.dto.unit.register.dto.OrgUnitRegisterHistoryDTO;
|
||||
import cn.axzo.orgmanax.dto.unit.register.req.ListUnitRegisterHistoryReq;
|
||||
import cn.axzo.orgmanax.dto.unit.register.req.ListUnitRegisterReq;
|
||||
|
||||
public interface RegisterService {
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询单位注册信息
|
||||
*/
|
||||
PageResp<OrgUnitRegisterDTO> list(ListUnitRegisterReq req);
|
||||
|
||||
PageResp<OrgUnitRegisterHistoryDTO> listHistory(ListUnitRegisterHistoryReq req);
|
||||
}
|
||||
@ -0,0 +1,73 @@
|
||||
package cn.axzo.orgmanax.server.unit.service.impl;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.unit.register.dto.*;
|
||||
import cn.axzo.orgmanax.dto.unit.register.req.ListUnitRegisterHistoryReq;
|
||||
import cn.axzo.orgmanax.dto.unit.register.req.ListUnitRegisterReq;
|
||||
import cn.axzo.orgmanax.infra.dao.register.repository.OrganizationalUnitRegisterQueryRepository;
|
||||
import cn.axzo.orgmanax.infra.dao.register.repository.OuRegisterHistoryQueryRepository;
|
||||
import cn.axzo.orgmanax.server.unit.service.RegisterService;
|
||||
import cn.axzo.orgmanax.server.util.mapstruct.UnitRegisterContactMapStruct;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author : zhanghonghao@axzo.cn
|
||||
* @since : 2024/12/26
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class RegisterServiceImpl implements RegisterService {
|
||||
|
||||
private final OrganizationalUnitRegisterQueryRepository organizationalUnitRegisterQueryRepository;
|
||||
private final OuRegisterHistoryQueryRepository ouRegisterHistoryQueryRepository;
|
||||
|
||||
@Override
|
||||
public PageResp<OrgUnitRegisterDTO> list(ListUnitRegisterReq req) {
|
||||
OrganizationalUnitRegisterQueryRepository.ListReq listReq = BeanUtil.copyProperties(req, OrganizationalUnitRegisterQueryRepository.ListReq.class);
|
||||
PageResp<OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp> page = organizationalUnitRegisterQueryRepository.page(listReq);
|
||||
return PageResp.<OrgUnitRegisterDTO>builder()
|
||||
.current(page.getCurrent())
|
||||
.total(page.getTotal())
|
||||
.size(page.getSize())
|
||||
.data(page.getData().stream().map(this::transformToRegisterDTO).collect(Collectors.toList()))
|
||||
.build();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResp<OrgUnitRegisterHistoryDTO> listHistory(ListUnitRegisterHistoryReq req) {
|
||||
OuRegisterHistoryQueryRepository.ListReq listReq = BeanUtil.copyProperties(req, OuRegisterHistoryQueryRepository.ListReq.class);
|
||||
PageResp<OuRegisterHistoryQueryRepository.OuRegisterHistoryResp> page = ouRegisterHistoryQueryRepository.page(listReq);
|
||||
return PageResp.<OrgUnitRegisterHistoryDTO>builder()
|
||||
.current(page.getCurrent())
|
||||
.total(page.getTotal())
|
||||
.size(page.getSize())
|
||||
.data(BeanUtil.copyToList(page.getData(), OrgUnitRegisterHistoryDTO.class))
|
||||
.build();
|
||||
}
|
||||
|
||||
private OrgUnitRegisterDTO transformToRegisterDTO(OrganizationalUnitRegisterQueryRepository.OrganizationalUnitRegisterResp registerResp) {
|
||||
OrgUnitRegisterDTO registerDTO = BeanUtil.copyProperties(registerResp, OrgUnitRegisterDTO.class);
|
||||
if (StringUtils.isNotBlank(registerResp.getCorpsRealName())) {
|
||||
registerDTO.setCorpsRealNameObj(JSONUtil.toBean(registerResp.getCorpsRealName(), OrgUnitRegisterRealNameDTO.class));
|
||||
}
|
||||
registerDTO.setConfirmStatus(Objects.isNull(registerResp.getConfirmAt()) ? 2 : 1);
|
||||
registerDTO.setOuRegisterLogs(JSONUtil.toList(registerResp.getActionLog(), OrgUnitRegisterLogDTO.class));
|
||||
registerDTO.setRegisterType(registerResp.getMainBodyType());
|
||||
List<OrgUnitRegisterContactDTO> contactResList = UnitRegisterContactMapStruct.INSTANCE.neat2ResList(registerResp.safeGetContactExtra().getContactList());
|
||||
registerDTO.setContactList(contactResList);
|
||||
registerDTO.setOuId(registerResp.getOrganizationalUnitId());
|
||||
registerDTO.setApprovalTime(Objects.equals(registerResp.getApprovalStatus(), 30) ? registerResp.getApprovalTime() : null);
|
||||
return registerDTO;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,18 @@
|
||||
package cn.axzo.orgmanax.server.util.mapstruct;
|
||||
|
||||
import cn.axzo.orgmanax.dto.unit.register.dto.OrgUnitRegisterContactDTO;
|
||||
import cn.axzo.orgmanax.infra.dao.register.entity.NeatContact;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface UnitRegisterContactMapStruct {
|
||||
UnitRegisterContactMapStruct INSTANCE = Mappers.getMapper(UnitRegisterContactMapStruct.class);
|
||||
|
||||
OrgUnitRegisterContactDTO neat2Res(NeatContact req);
|
||||
|
||||
List<OrgUnitRegisterContactDTO> neat2ResList(List<NeatContact> req);
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user