Merge remote-tracking branch 'origin/feature/REQ-3488' into feature/REQ-3488
This commit is contained in:
commit
07e8782b20
@ -0,0 +1,32 @@
|
||||
package cn.axzo.orgmanax.api.teamlog.feign;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.foundation.result.ApiResult;
|
||||
import cn.axzo.orgmanax.dto.nodeuser.req.ListNodeUserReq;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/25
|
||||
*/
|
||||
@FeignClient(
|
||||
value = "orgmanax",
|
||||
url = "${axzo.service.orgmanax:http://orgmanax:8080}")
|
||||
public interface TeamLogApi {
|
||||
/**
|
||||
* 分页列表接口。
|
||||
* XXX:本接口默认分页,单页最多返回1000条数据。调用方使用时需注意。
|
||||
*
|
||||
* @param req
|
||||
* @return
|
||||
* @see ListNodeUserReq#getPageSize()
|
||||
*/
|
||||
@PostMapping("/api/team-log/list")
|
||||
ApiResult<PageResp<TeamLogDTO>> list(@RequestBody @Validated TeamLogPageReq req);
|
||||
|
||||
}
|
||||
@ -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);
|
||||
|
||||
}
|
||||
13
orgmanax-api/src/test/resources/http/teamlog/team-log.http
Normal file
13
orgmanax-api/src/test/resources/http/teamlog/team-log.http
Normal file
@ -0,0 +1,13 @@
|
||||
# 查询
|
||||
POST {{host}}/api/team-log/list
|
||||
Content-Type: application/json
|
||||
Accept: application/json
|
||||
|
||||
{
|
||||
"page": 1,
|
||||
"pageSize": 20,
|
||||
"teamIds": [10358],
|
||||
"type": "CHANGE_TEAM_OWNER"
|
||||
}
|
||||
|
||||
###
|
||||
@ -37,4 +37,14 @@ public interface OrgJobConstants {
|
||||
String CODE_KEY = "code";
|
||||
String OLD_NEW_JOB_CODE_MAP_KEY = "job_code_mapping";
|
||||
Integer JOB_PAGE_SIZE = 1000;
|
||||
|
||||
/**
|
||||
* 系统操作人的personId
|
||||
*/
|
||||
Long SYSTEM_OPERATOR_ID = -1L;
|
||||
|
||||
/**
|
||||
* 默认岗位的标识
|
||||
*/
|
||||
Integer ORG_JOB_DEF_FLAG = 1;
|
||||
}
|
||||
|
||||
@ -0,0 +1,66 @@
|
||||
package cn.axzo.orgmanax.dto.teamlog.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 平台班组变更日志表
|
||||
* </p>
|
||||
*
|
||||
* @author autoGenerator
|
||||
* @since 2023-04-14
|
||||
*/
|
||||
@Data
|
||||
public class TeamLogDTO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 平台班组id
|
||||
*/
|
||||
private Long platTeamId;
|
||||
|
||||
/**
|
||||
* log类型
|
||||
*/
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 变更描述
|
||||
*/
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 相关参数
|
||||
*/
|
||||
private String param;
|
||||
|
||||
/**
|
||||
* 操作人身份id
|
||||
*/
|
||||
private Long operatorId;
|
||||
|
||||
/**
|
||||
* 是否删除 0否1是
|
||||
*/
|
||||
private Long isDelete;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createAt;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private Date updateAt;
|
||||
|
||||
}
|
||||
@ -0,0 +1,22 @@
|
||||
package cn.axzo.orgmanax.dto.teamlog.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 平台班组日志类型
|
||||
* @author zhangtianyu
|
||||
* @date 2023/4/14 4:00 PM
|
||||
**/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum PlatTeamLogType {
|
||||
/**
|
||||
* 更换班组长
|
||||
*/
|
||||
CHANGE_TEAM_OWNER("更换班组长", "将原班组长%s更换为%s"),
|
||||
;
|
||||
|
||||
private final String desc;
|
||||
private final String content;
|
||||
}
|
||||
@ -0,0 +1,43 @@
|
||||
package cn.axzo.orgmanax.dto.teamlog.req;
|
||||
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import cn.axzo.orgmanax.dto.teamlog.enums.PlatTeamLogType;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/17
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@SuperBuilder
|
||||
public class TeamLogPageReq extends PageReqV2 {
|
||||
/**
|
||||
* 平台班组日志类型
|
||||
*/
|
||||
@NotNull(message = "type must not null")
|
||||
private PlatTeamLogType type;
|
||||
|
||||
/**
|
||||
* 班组id列表
|
||||
*/
|
||||
private List<Long> teamIds;
|
||||
|
||||
/**
|
||||
* 开始时间(对于创建时间)
|
||||
*/
|
||||
private Date start;
|
||||
|
||||
/**
|
||||
* 结束时间(对于创建时间)
|
||||
*/
|
||||
private Date end;
|
||||
}
|
||||
@ -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
|
||||
@ -19,6 +20,11 @@ public class OrgUnitRegisterDTO implements Serializable {
|
||||
*/
|
||||
private long id;
|
||||
|
||||
/**
|
||||
* 单位id
|
||||
*/
|
||||
private Long organizationalUnitId;
|
||||
|
||||
/**
|
||||
* 单位名称
|
||||
*/
|
||||
@ -28,6 +34,10 @@ public class OrgUnitRegisterDTO implements Serializable {
|
||||
* 提交时间
|
||||
*/
|
||||
private Date submissionTime;
|
||||
/**
|
||||
* 审批时间
|
||||
*/
|
||||
private Date approvalTime;
|
||||
|
||||
/**
|
||||
* 状态:0:已撤销 ,10:审核中,20:审核拒绝,30:审核通过
|
||||
@ -59,4 +69,124 @@ public class OrgUnitRegisterDTO implements Serializable {
|
||||
*/
|
||||
private Integer registerType;
|
||||
|
||||
/**
|
||||
* 用户确认状态 1已确认(有用户确认时间) 2未确认
|
||||
*/
|
||||
private Integer confirmStatus = 2;
|
||||
|
||||
/**
|
||||
* 营业期限(纯字符串不做解析)
|
||||
*/
|
||||
private String operatingPeriod;
|
||||
|
||||
/**
|
||||
* 经营范围(纯字符串不做解析)
|
||||
*/
|
||||
private String businessScope;
|
||||
|
||||
/**
|
||||
* 工作流实例id
|
||||
*/
|
||||
private String processInstanceId;
|
||||
|
||||
/**
|
||||
* 单位logo url地址
|
||||
*/
|
||||
private String logoUrl;
|
||||
|
||||
/**
|
||||
* 单位介绍
|
||||
*/
|
||||
private String introduction;
|
||||
|
||||
/**
|
||||
* 营业执照号图片url地址
|
||||
*/
|
||||
private String usccPicUrl;
|
||||
|
||||
/**
|
||||
* 认证公函
|
||||
*/
|
||||
private String certificationLetterUrl;
|
||||
|
||||
/**
|
||||
* 企业资质证书,可以是多个
|
||||
*/
|
||||
private String certificationUrl;
|
||||
|
||||
/**
|
||||
* 统一社会信用码
|
||||
*/
|
||||
private String uniformSocialCreditCode;
|
||||
|
||||
/**
|
||||
* 法人代表姓名
|
||||
*/
|
||||
private String legalName;
|
||||
|
||||
/**
|
||||
* 单位注册地址
|
||||
*/
|
||||
private String registeredAddress;
|
||||
|
||||
/**
|
||||
* 省市区区编码,以“/”隔开
|
||||
*/
|
||||
private String areaCode;
|
||||
|
||||
/**
|
||||
* 省市区名字,以“/”隔开(四川省/成都市/武侯区)
|
||||
*/
|
||||
private String areaName;
|
||||
|
||||
/**
|
||||
* 企业详细地址
|
||||
*/
|
||||
private String address;
|
||||
|
||||
/**
|
||||
* 企业poi地址
|
||||
*/
|
||||
private String addressPoi;
|
||||
|
||||
/**
|
||||
* 经纬度,以“/”隔开经度,纬度(124.32421/142.424432)
|
||||
*/
|
||||
private String longLat;
|
||||
|
||||
/**
|
||||
* 官网
|
||||
**/
|
||||
private String website;
|
||||
|
||||
/**
|
||||
* 管理员手机号
|
||||
*/
|
||||
private String adminPhone;
|
||||
|
||||
/**
|
||||
* 管理员姓名
|
||||
*/
|
||||
private String adminName;
|
||||
|
||||
/**
|
||||
* 联系人&提交人职务
|
||||
*/
|
||||
private String contactPosition;
|
||||
|
||||
/**
|
||||
* 操作日志
|
||||
*/
|
||||
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;
|
||||
}
|
||||
@ -47,19 +47,28 @@ public class ListUnitRegisterReq extends PageReqV2 {
|
||||
*/
|
||||
private Date submissionTimeEnd;
|
||||
|
||||
/**
|
||||
* 提交人手机号
|
||||
*/
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 主体类型: 1:企业 2:团队
|
||||
*/
|
||||
private Integer mainBodyType;
|
||||
|
||||
/**
|
||||
* 注册类型 1-单位注册 2-施工资质注册
|
||||
**/
|
||||
private Integer registerType;
|
||||
* 统一社会信用代码
|
||||
*/
|
||||
private String uniformSocialCreditCode;
|
||||
|
||||
/**
|
||||
* 单位id
|
||||
*/
|
||||
private Long organizationalUnitId;
|
||||
|
||||
/**
|
||||
* 工作流实例id
|
||||
*/
|
||||
private String processInstanceId;
|
||||
|
||||
/**
|
||||
* 联系人&提交人手机号
|
||||
*/
|
||||
private String contactPhone;
|
||||
}
|
||||
@ -1,24 +0,0 @@
|
||||
package cn.axzo.orgmanax.infra.constants;
|
||||
|
||||
import lombok.AccessLevel;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @description 岗位相关的常量
|
||||
* @author luofu
|
||||
* @version 1.0
|
||||
* @date 2024/9/12
|
||||
*/
|
||||
@NoArgsConstructor(access = AccessLevel.PRIVATE)
|
||||
public final class OrgJobConstant {
|
||||
|
||||
/**
|
||||
* 系统操作人的personId
|
||||
*/
|
||||
public static final long SYSTEM_OPERATOR_ID = -1L;
|
||||
|
||||
/**
|
||||
* 默认岗位的标识
|
||||
*/
|
||||
public static final int ORG_JOB_DEF_FLAG = 1;
|
||||
}
|
||||
@ -1,6 +1,5 @@
|
||||
package cn.axzo.orgmanax.infra.dao.orgjob.dao;
|
||||
|
||||
import cn.axzo.orgmanax.infra.constants.OrgJobConstant;
|
||||
import cn.axzo.orgmanax.infra.dao.orgjob.entity.OrgJob;
|
||||
import cn.axzo.orgmanax.infra.dao.orgjob.mapper.OrgJobMapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
@ -36,7 +35,7 @@ public class OrgJobDao extends ServiceImpl<OrgJobMapper, OrgJob> {
|
||||
if (Objects.isNull(id)) {
|
||||
return 0;
|
||||
}
|
||||
operatorId = Optional.ofNullable(operatorId).orElse(OrgJobConstant.SYSTEM_OPERATOR_ID);
|
||||
operatorId = Optional.ofNullable(operatorId).orElse(-1L);
|
||||
return getBaseMapper().remove(id, operatorId);
|
||||
}
|
||||
|
||||
|
||||
@ -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;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,19 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.dao;
|
||||
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.mapper.PlatTeamLogMapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 平台班组变更日志表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author autoGenerator
|
||||
* @since 2023-04-14
|
||||
*/
|
||||
@Service
|
||||
public class PlatTeamLogDao extends ServiceImpl<PlatTeamLogMapper, PlatTeamLog> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,91 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.extension.activerecord.Model;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 平台班组变更日志表
|
||||
* </p>
|
||||
*
|
||||
* @author autoGenerator
|
||||
* @since 2023-04-14
|
||||
*/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@TableName("plat_team_log")
|
||||
public class PlatTeamLog implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 平台班组id
|
||||
*/
|
||||
@TableField("plat_team_id")
|
||||
private Long platTeamId;
|
||||
|
||||
/**
|
||||
* log类型
|
||||
*/
|
||||
@TableField("type")
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 变更描述
|
||||
*/
|
||||
@TableField("content")
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 相关参数
|
||||
*/
|
||||
@TableField("param")
|
||||
private String param;
|
||||
|
||||
/**
|
||||
* 操作人身份id
|
||||
*/
|
||||
@TableField("operator_id")
|
||||
private Long operatorId;
|
||||
|
||||
/**
|
||||
* 是否删除 0否1是
|
||||
*/
|
||||
@TableField("is_delete")
|
||||
private Long isDelete;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@TableField("create_at")
|
||||
private Date createAt;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@TableField("update_at")
|
||||
private Date updateAt;
|
||||
|
||||
}
|
||||
@ -0,0 +1,16 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.mapper;
|
||||
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 平台班组变更日志表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author autoGenerator
|
||||
* @since 2023-04-14
|
||||
*/
|
||||
public interface PlatTeamLogMapper extends BaseMapper<PlatTeamLog> {
|
||||
|
||||
}
|
||||
@ -0,0 +1,107 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.repository;
|
||||
|
||||
import cn.axzo.foundation.dao.support.wrapper.CriteriaField;
|
||||
import cn.axzo.foundation.dao.support.wrapper.Operator;
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.teamlog.enums.PlatTeamLogType;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import cn.axzo.orgmanax.infra.dao.nodeuser.entity.OrganizationalNodeUser;
|
||||
import cn.axzo.orgmanax.infra.dao.nodeuser.repository.NodeUserQueryRepository;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
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;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/25
|
||||
*/
|
||||
public interface PlatTeamLogRepository {
|
||||
PageResp<TeamLogResp> page(PageReq req);
|
||||
|
||||
default List<TeamLogResp> list(PageReq req) {
|
||||
return page(req).getData();
|
||||
}
|
||||
|
||||
default TeamLogResp one(OneReq req) {
|
||||
return oneOpt(req).orElse(null);
|
||||
}
|
||||
|
||||
default Optional<TeamLogResp> oneOpt(OneReq req) {
|
||||
PageReq page = BeanUtil.toBean(req, PageReq.class);
|
||||
page.setPage(1);
|
||||
page.setPageSize(1);
|
||||
return page(page).getData().stream().findFirst();
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class PageReq extends PageReqV2 {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@CriteriaField
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 平台班组日志类型
|
||||
*/
|
||||
@CriteriaField
|
||||
private String type;
|
||||
|
||||
/**
|
||||
* 班组id列表
|
||||
*/
|
||||
@CriteriaField(field = "platTeamId", operator = Operator.IN)
|
||||
private List<Long> teamIds;
|
||||
|
||||
/**
|
||||
* 开始时间(对于创建时间)
|
||||
*/
|
||||
@CriteriaField(field = "createAt", operator = Operator.GE)
|
||||
private Date start;
|
||||
|
||||
/**
|
||||
* 结束时间(对于创建时间)
|
||||
*/
|
||||
@CriteriaField(field = "createAt", operator = Operator.LE)
|
||||
private Date end;
|
||||
|
||||
/**
|
||||
* 是都包含删除(默认走查询未删除)
|
||||
*/
|
||||
@CriteriaField(ignore = true)
|
||||
private Boolean includeDeleted;
|
||||
}
|
||||
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class TeamLogResp extends PlatTeamLog {
|
||||
private String xx;
|
||||
}
|
||||
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Data
|
||||
@SuperBuilder
|
||||
class OneReq {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long id;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,47 @@
|
||||
package cn.axzo.orgmanax.infra.dao.teamlog.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.teamlog.dao.PlatTeamLogDao;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.repository.PlatTeamLogRepository;
|
||||
import cn.axzo.orgmanax.infra.util.CommonUtil;
|
||||
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.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/25
|
||||
*/
|
||||
@Repository
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
public class PlatTeamLogRepositoryImpl implements PlatTeamLogRepository {
|
||||
|
||||
private PlatTeamLogDao platTeamLogDao;
|
||||
|
||||
@Override
|
||||
public PageResp<TeamLogResp> page(PageReq req) {
|
||||
IPage<PlatTeamLog> page = PageConverter.toMybatis(req, PlatTeamLog.class);
|
||||
QueryWrapper<PlatTeamLog> wrapper = QueryWrapperHelper.fromBean(req, PlatTeamLog.class);
|
||||
|
||||
// 处理删除标记
|
||||
if (!BooleanUtil.isTrue(req.getIncludeDeleted())) {
|
||||
wrapper.eq("is_delete", 0);
|
||||
}
|
||||
|
||||
IPage<TeamLogResp> results = platTeamLogDao.page(page, wrapper)
|
||||
.convert(e -> BeanUtil.toBean(e, TeamLogResp.class));
|
||||
if (CollUtil.isEmpty(results.getRecords())) {
|
||||
return CommonUtil.getEmptyPage(req, TeamLogResp.class);
|
||||
}
|
||||
return PageConverter.toResp(results);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,26 @@
|
||||
package cn.axzo.orgmanax.infra.util;
|
||||
|
||||
import cn.axzo.foundation.page.PageReqV2;
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import com.baomidou.mybatisplus.extension.api.R;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import lombok.experimental.UtilityClass;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
@UtilityClass
|
||||
public class CommonUtil {
|
||||
|
||||
/**
|
||||
* 获取空集合分页数据
|
||||
* @param req
|
||||
* @param rClass
|
||||
* @param <R>
|
||||
* @return
|
||||
*/
|
||||
public static <R> PageResp<R> getEmptyPage(PageReqV2 req, Class<R> rClass){
|
||||
return PageResp.<R>builder().size(req.getPageSize()).current(req.getPage()).total(0L).data(ImmutableList.of()).build();
|
||||
}
|
||||
}
|
||||
@ -7,8 +7,12 @@ import cn.azxo.framework.common.model.CommonResponse;
|
||||
import cn.hutool.core.util.ReUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.validation.BindingResult;
|
||||
import org.springframework.validation.FieldError;
|
||||
import org.springframework.web.bind.MethodArgumentNotValidException;
|
||||
import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.bind.annotation.RestControllerAdvice;
|
||||
import org.springframework.web.method.annotation.MethodArgumentTypeMismatchException;
|
||||
|
||||
@Slf4j
|
||||
@RestControllerAdvice
|
||||
@ -29,6 +33,26 @@ public class ExceptionControllerAdvice {
|
||||
return ApiResult.error(BizResultCode.UNKNOWN_ERROR.getErrorCode(), extractMessage(ex));
|
||||
}
|
||||
|
||||
@ExceptionHandler(value = MethodArgumentNotValidException.class)
|
||||
public ApiResult handleArgumentValidException(MethodArgumentNotValidException e){
|
||||
log.warn("handleArgumentValidException Exception", e);
|
||||
BindingResult bindingResult = e.getBindingResult();
|
||||
StringBuilder errorMsg = new StringBuilder();
|
||||
for (FieldError fieldError : bindingResult.getFieldErrors()) {
|
||||
if (-1 == errorMsg.indexOf(fieldError.getDefaultMessage())) {
|
||||
errorMsg.append(fieldError.getDefaultMessage()).append(",");
|
||||
}
|
||||
}
|
||||
errorMsg.deleteCharAt(errorMsg.length() - 1);
|
||||
return ApiResult.error(BizResultCode.INVALID_PARAM.getErrorCode(), errorMsg.toString());
|
||||
}
|
||||
|
||||
@ExceptionHandler(value = MethodArgumentTypeMismatchException.class)
|
||||
public ApiResult handleMethodArgumentTypeMismatchException(MethodArgumentTypeMismatchException e){
|
||||
log.warn("handleMethodArgumentTypeMismatchException Exception", e);
|
||||
return ApiResult.error(BizResultCode.INVALID_PARAM.getErrorCode(), e.getMessage());
|
||||
}
|
||||
|
||||
/**
|
||||
* 捕捉Exception异常
|
||||
*
|
||||
|
||||
@ -0,0 +1,28 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.controller;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.foundation.result.ApiResult;
|
||||
import cn.axzo.orgmanax.api.teamlog.feign.TeamLogApi;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import cn.axzo.orgmanax.server.teamlog.service.TeamLogService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/25
|
||||
*/
|
||||
@RestController
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
public class TeamLogController implements TeamLogApi {
|
||||
|
||||
private TeamLogService teamLogService;
|
||||
|
||||
@Override
|
||||
public ApiResult<PageResp<TeamLogDTO>> list(TeamLogPageReq req) {
|
||||
return ApiResult.success(teamLogService.page(req));
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,13 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.foundation;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
public interface TeamLogFoundationService {
|
||||
PageResp<TeamLogDTO> page(TeamLogPageReq req);
|
||||
}
|
||||
@ -0,0 +1,40 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.foundation.impl;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.job.dto.OrgJobDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.entity.PlatTeamLog;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.repository.PlatTeamLogRepository;
|
||||
import cn.axzo.orgmanax.server.teamlog.foundation.TeamLogFoundationService;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
public class TeamLogFoundationServiceImpl implements TeamLogFoundationService {
|
||||
|
||||
private PlatTeamLogRepository platTeamLogRepository;
|
||||
|
||||
@Override
|
||||
public PageResp<TeamLogDTO> page(TeamLogPageReq req) {
|
||||
PlatTeamLogRepository.PageReq pageReq = BeanUtil.copyProperties(req, PlatTeamLogRepository.PageReq.class);
|
||||
pageReq.setType(req.getType().name());
|
||||
PageResp<PlatTeamLogRepository.TeamLogResp> page = platTeamLogRepository.page(pageReq);
|
||||
return PageResp.<TeamLogDTO>builder()
|
||||
.size(page.getSize())
|
||||
.current(page.getCurrent())
|
||||
.total(page.getTotal())
|
||||
.data(BeanUtil.copyToList(page.getData(), TeamLogDTO.class))
|
||||
.build();
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,18 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.service;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
public interface TeamLogService {
|
||||
/**
|
||||
* 分页查询班组日志
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
PageResp<TeamLogDTO> page(TeamLogPageReq req);
|
||||
}
|
||||
@ -0,0 +1,33 @@
|
||||
package cn.axzo.orgmanax.server.teamlog.service.impl;
|
||||
|
||||
import cn.axzo.foundation.page.PageResp;
|
||||
import cn.axzo.orgmanax.dto.teamlog.dto.TeamLogDTO;
|
||||
import cn.axzo.orgmanax.dto.teamlog.req.TeamLogPageReq;
|
||||
import cn.axzo.orgmanax.infra.dao.teamlog.repository.PlatTeamLogRepository;
|
||||
import cn.axzo.orgmanax.server.teamlog.foundation.TeamLogFoundationService;
|
||||
import cn.axzo.orgmanax.server.teamlog.service.TeamLogService;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* @author zhanghongbo
|
||||
* @date 2024/12/26
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
@AllArgsConstructor
|
||||
public class TeamLogServiceImpl implements TeamLogService {
|
||||
|
||||
private TeamLogFoundationService teamLogFoundationService;
|
||||
|
||||
/**
|
||||
* 分页查询班组日志
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public PageResp<TeamLogDTO> page(TeamLogPageReq req) {
|
||||
return teamLogFoundationService.page(req);
|
||||
}
|
||||
}
|
||||
@ -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,72 @@
|
||||
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.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