feat(REQ-3300): 添加导出变更签证接口定义
This commit is contained in:
parent
79a98c2e3a
commit
02861537eb
@ -1,9 +1,11 @@
|
||||
package cn.axzo.visa.api.changerecord;
|
||||
|
||||
import cn.axzo.framework.domain.web.result.ApiPageResult;
|
||||
import cn.axzo.framework.domain.web.result.ApiResult;
|
||||
import cn.axzo.visa.api.request.ChangeStatusRequest;
|
||||
import cn.axzo.visa.api.request.VisaChangeApproveCreateReq;
|
||||
import cn.axzo.visa.api.request.VisaChangeDiscussCreateReq;
|
||||
import cn.axzo.visa.api.request.VisaChangeExportReq;
|
||||
import cn.axzo.visa.api.request.VisaChangePageSearchReq;
|
||||
import cn.axzo.visa.api.request.VisaChangeTempCreateReq;
|
||||
import cn.axzo.visa.api.request.VisaDetailByIdRequest;
|
||||
@ -70,6 +72,15 @@ public interface ChangeRecordApi {
|
||||
* @return 分页记录
|
||||
*/
|
||||
@PostMapping("/api/visa/change/pageSearch")
|
||||
ApiResult<VisaChangePageSearchResp> pageSearchVisaChangeRecord(@RequestBody @Validated VisaChangePageSearchReq req);
|
||||
ApiPageResult<VisaChangePageSearchResp> pageSearchVisaChangeRecord(@RequestBody @Validated VisaChangePageSearchReq req);
|
||||
|
||||
/**
|
||||
* 导出
|
||||
*
|
||||
* @param req {@link VisaChangeExportReq} 筛选条件和导出字段
|
||||
* @return void
|
||||
*/
|
||||
@PostMapping("/api/visa/change/export")
|
||||
ApiResult<Void> exportVisaChangeRecord(@RequestBody VisaChangeExportReq req);
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,44 @@
|
||||
package cn.axzo.visa.api.enums;
|
||||
|
||||
import lombok.Getter;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
/**
|
||||
* @author chenwenjian
|
||||
* @version 1.0
|
||||
* @date 2025/1/16 17:10
|
||||
*/
|
||||
@Getter
|
||||
public enum VisaChangeFieldEnum {
|
||||
NO("no", "单号"),
|
||||
TYPE("type", "单据类型"),
|
||||
STATUS("status", "单据状态"),
|
||||
TOPIC("topic", "主题"),
|
||||
AMOUNT_CHANGE("amountChange", "金额变化"),
|
||||
CREATE_BY("createBy", "发起人"),
|
||||
CREATE_AT("happenTime", "提出时间"),
|
||||
APPROVAL_COMPLETE_TIME("approvalCompleteTime", "审批通过时间"),
|
||||
RELATION_PROJECT("relationProject", "所属工程"),
|
||||
;
|
||||
|
||||
private final String value;
|
||||
|
||||
private final String desc;
|
||||
|
||||
VisaChangeFieldEnum(String value, String desc) {
|
||||
this.value = value;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public static VisaChangeFieldEnum getByName(String name) {
|
||||
if (StringUtils.isBlank(name)) {
|
||||
return null;
|
||||
}
|
||||
for (VisaChangeFieldEnum value : values()) {
|
||||
if (value.value.equals(name)) {
|
||||
return value;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,31 @@
|
||||
package cn.axzo.visa.api.request;
|
||||
|
||||
import cn.axzo.visa.api.enums.VisaChangeFieldEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author chenwenjian
|
||||
* @version 1.0
|
||||
* @date 2025/1/16 17:38
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class VisaChangeExportReq {
|
||||
|
||||
/**
|
||||
* 筛选条件
|
||||
*/
|
||||
private VisaChangePageSearchReq filter;
|
||||
|
||||
/**
|
||||
* 导出字段
|
||||
*/
|
||||
private List<VisaChangeFieldEnum> fields;
|
||||
}
|
||||
@ -0,0 +1,54 @@
|
||||
package cn.axzo.visa.api.request;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* @author chenwenjian
|
||||
* @version 1.0
|
||||
* @date 2025/1/16 18:43
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class VisaChangeInitiatorResp {
|
||||
|
||||
/**
|
||||
* 发起人personId
|
||||
*/
|
||||
private Long personId;
|
||||
|
||||
/**
|
||||
* 发起人姓名
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 岗位id
|
||||
*/
|
||||
private Long jobId;
|
||||
|
||||
/**
|
||||
* 岗位名称
|
||||
*/
|
||||
private String jobName;
|
||||
|
||||
/**
|
||||
* 岗位编码
|
||||
*/
|
||||
private String jobCode;
|
||||
|
||||
/**
|
||||
* 所属单位id或班组节点id
|
||||
*/
|
||||
private Long unitIdOrTeamNodeId;
|
||||
|
||||
/**
|
||||
* 所属单位名称或班组名称
|
||||
*/
|
||||
private String unitOrTeamName;
|
||||
|
||||
}
|
||||
@ -57,10 +57,10 @@ public class VisaChangePageSearchReq {
|
||||
private List<BigDecimal> amountChange;
|
||||
|
||||
/**
|
||||
* 提交时间区间
|
||||
* 提出时间区间
|
||||
* 0:起始时间 1:结束时间
|
||||
*/
|
||||
private List<Date> submitDate;
|
||||
private List<Date> happenTime;
|
||||
|
||||
/**
|
||||
* 审批完成时间区间
|
||||
|
||||
@ -62,10 +62,10 @@ public class VisaChangeTempCreateReq {
|
||||
private JSONObject relationArea;
|
||||
|
||||
/**
|
||||
* 提出日期
|
||||
* 提出时间
|
||||
*/
|
||||
@NotNull(message = "请选择提交日期")
|
||||
private Date submitDate;
|
||||
private Date happenTime;
|
||||
|
||||
/**
|
||||
* 专业集合
|
||||
|
||||
@ -1,10 +1,16 @@
|
||||
package cn.axzo.visa.api.response;
|
||||
|
||||
import cn.axzo.visa.api.enums.VisaStatusEnum;
|
||||
import cn.axzo.visa.api.enums.VisaTypeEnum;
|
||||
import cn.axzo.visa.api.request.VisaChangeInitiatorResp;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* @author chenwenjian
|
||||
* @version 1.0
|
||||
@ -15,4 +21,65 @@ import lombok.NoArgsConstructor;
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class VisaChangePageSearchResp {
|
||||
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 单号
|
||||
*/
|
||||
private String no;
|
||||
|
||||
/**
|
||||
* 主题
|
||||
*/
|
||||
private String topic;
|
||||
|
||||
/**
|
||||
* 项目
|
||||
*/
|
||||
private Long relationWorkspaceId;
|
||||
|
||||
/**
|
||||
* 工程
|
||||
*/
|
||||
private Long relationProject;
|
||||
|
||||
/**
|
||||
* 工程名称
|
||||
*/
|
||||
private String relationProjectName;
|
||||
|
||||
/**
|
||||
* 提出时间
|
||||
*/
|
||||
private Date happenTime;
|
||||
|
||||
|
||||
/**
|
||||
* 最终审批时间
|
||||
*/
|
||||
private Date approvalCompleteTime;
|
||||
|
||||
/**
|
||||
* 单据类型
|
||||
*/
|
||||
private VisaTypeEnum type;
|
||||
|
||||
/**
|
||||
* 状态
|
||||
*/
|
||||
private VisaStatusEnum status;
|
||||
|
||||
/**
|
||||
* 有符号的变更金额
|
||||
*/
|
||||
private BigDecimal amountChange;
|
||||
|
||||
|
||||
/**
|
||||
* 发起人
|
||||
*/
|
||||
private VisaChangeInitiatorResp initiator;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -67,9 +67,9 @@ public class VisaDetailByIdResponse {
|
||||
private JSONObject relationArea;
|
||||
|
||||
/**
|
||||
* 提交日期
|
||||
* 提出时间
|
||||
*/
|
||||
private Date submitDate;
|
||||
private Date happenTime;
|
||||
|
||||
/**
|
||||
* 专业集合
|
||||
|
||||
@ -1,10 +1,12 @@
|
||||
package cn.axzo.visa.server.controller;
|
||||
|
||||
import cn.axzo.framework.domain.web.result.ApiPageResult;
|
||||
import cn.axzo.framework.domain.web.result.ApiResult;
|
||||
import cn.axzo.visa.api.changerecord.ChangeRecordApi;
|
||||
import cn.axzo.visa.api.request.ChangeStatusRequest;
|
||||
import cn.axzo.visa.api.request.VisaChangeApproveCreateReq;
|
||||
import cn.axzo.visa.api.request.VisaChangeDiscussCreateReq;
|
||||
import cn.axzo.visa.api.request.VisaChangeExportReq;
|
||||
import cn.axzo.visa.api.request.VisaChangePageSearchReq;
|
||||
import cn.axzo.visa.api.request.VisaChangeTempCreateReq;
|
||||
import cn.axzo.visa.api.request.VisaDetailByIdRequest;
|
||||
@ -63,7 +65,12 @@ public class ChangeRecordController implements ChangeRecordApi {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResult<VisaChangePageSearchResp> pageSearchVisaChangeRecord(VisaChangePageSearchReq req) {
|
||||
public ApiPageResult<VisaChangePageSearchResp> pageSearchVisaChangeRecord(VisaChangePageSearchReq req) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResult<Void> exportVisaChangeRecord(VisaChangeExportReq req) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@ -66,6 +66,12 @@ public class ChangeRecord extends BaseEntity<ChangeRecord> {
|
||||
@TableField(value = "relation_professional", typeHandler = FastjsonTypeHandler.class)
|
||||
private JSONObject relationProfessional;
|
||||
|
||||
/**
|
||||
* 提出时间
|
||||
*/
|
||||
@TableField(value = "happen_time")
|
||||
private Date happenTime;
|
||||
|
||||
/**
|
||||
* 有符号的变更金额
|
||||
*/
|
||||
|
||||
Loading…
Reference in New Issue
Block a user