diff --git a/klp-hrm/src/main/java/com/klp/hrm/domain/HrmCertificate.java b/klp-hrm/src/main/java/com/klp/hrm/domain/HrmCertificate.java index a1c3ee1b..a20caed1 100644 --- a/klp-hrm/src/main/java/com/klp/hrm/domain/HrmCertificate.java +++ b/klp-hrm/src/main/java/com/klp/hrm/domain/HrmCertificate.java @@ -25,6 +25,10 @@ public class HrmCertificate extends BaseEntity implements Serializable { private Date validFrom; private Date validTo; private String remark; + /** + * 证书附件 fileIds(逗号分隔的 OSS ID) + */ + private String fileIds; @TableLogic private Integer delFlag; } diff --git a/klp-hrm/src/main/java/com/klp/hrm/domain/HrmContract.java b/klp-hrm/src/main/java/com/klp/hrm/domain/HrmContract.java index 6cd604a8..8d3e8b8d 100644 --- a/klp-hrm/src/main/java/com/klp/hrm/domain/HrmContract.java +++ b/klp-hrm/src/main/java/com/klp/hrm/domain/HrmContract.java @@ -25,6 +25,10 @@ public class HrmContract extends BaseEntity implements Serializable { private Date endDate; private String status; private String remark; + /** + * 合同附件 fileIds(逗号分隔的 OSS ID) + */ + private String fileIds; @TableLogic private Integer delFlag; } diff --git a/klp-hrm/src/main/java/com/klp/hrm/domain/bo/HrmCertificateBo.java b/klp-hrm/src/main/java/com/klp/hrm/domain/bo/HrmCertificateBo.java index b5861acf..53850477 100644 --- a/klp-hrm/src/main/java/com/klp/hrm/domain/bo/HrmCertificateBo.java +++ b/klp-hrm/src/main/java/com/klp/hrm/domain/bo/HrmCertificateBo.java @@ -1,8 +1,10 @@ package com.klp.hrm.domain.bo; import com.klp.common.core.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import lombok.EqualsAndHashCode; +import org.springframework.format.annotation.DateTimeFormat; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; @@ -22,7 +24,15 @@ public class HrmCertificateBo extends BaseEntity { private String certNo; private String issuedBy; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date validFrom; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date validTo; private String remark; + /** + * 证书附件 fileIds(逗号分隔的 OSS ID) + */ + private String fileIds; } diff --git a/klp-hrm/src/main/java/com/klp/hrm/domain/bo/HrmContractBo.java b/klp-hrm/src/main/java/com/klp/hrm/domain/bo/HrmContractBo.java index 07fbd23a..cbea96da 100644 --- a/klp-hrm/src/main/java/com/klp/hrm/domain/bo/HrmContractBo.java +++ b/klp-hrm/src/main/java/com/klp/hrm/domain/bo/HrmContractBo.java @@ -7,6 +7,8 @@ import lombok.EqualsAndHashCode; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; @Data @EqualsAndHashCode(callSuper = true) @@ -21,8 +23,16 @@ public class HrmContractBo extends BaseEntity { private String contractNo; private String contractType; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date startDate; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date endDate; private String status; private String remark; + /** + * 合同附件 fileIds(逗号分隔的 OSS ID) + */ + private String fileIds; } diff --git a/klp-hrm/src/main/java/com/klp/hrm/domain/vo/HrmCertificateVo.java b/klp-hrm/src/main/java/com/klp/hrm/domain/vo/HrmCertificateVo.java index 8c79a89d..b65cc0d9 100644 --- a/klp-hrm/src/main/java/com/klp/hrm/domain/vo/HrmCertificateVo.java +++ b/klp-hrm/src/main/java/com/klp/hrm/domain/vo/HrmCertificateVo.java @@ -5,6 +5,7 @@ import lombok.Data; import java.io.Serializable; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; @Data public class HrmCertificateVo implements Serializable { @@ -21,11 +22,17 @@ public class HrmCertificateVo implements Serializable { @Excel(name = "颁发机构") private String issuedBy; @Excel(name = "有效期开始", width = 20, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date validFrom; @Excel(name = "有效期结束", width = 20, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date validTo; @Excel(name = "备注") private String remark; + /** + * 证书附件 fileIds(逗号分隔的 OSS ID) + */ + private String fileIds; private String createBy; private Date createTime; private String updateBy; diff --git a/klp-hrm/src/main/java/com/klp/hrm/domain/vo/HrmContractVo.java b/klp-hrm/src/main/java/com/klp/hrm/domain/vo/HrmContractVo.java index 7b486e30..53ca6820 100644 --- a/klp-hrm/src/main/java/com/klp/hrm/domain/vo/HrmContractVo.java +++ b/klp-hrm/src/main/java/com/klp/hrm/domain/vo/HrmContractVo.java @@ -5,6 +5,7 @@ import lombok.Data; import java.io.Serializable; import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; @Data public class HrmContractVo implements Serializable { @@ -19,13 +20,19 @@ public class HrmContractVo implements Serializable { @Excel(name = "合同类型") private String contractType; @Excel(name = "开始日期", width = 20, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date startDate; @Excel(name = "结束日期", width = 20, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date endDate; @Excel(name = "状态") private String status; @Excel(name = "备注") private String remark; + /** + * 合同附件 fileIds(逗号分隔的 OSS ID) + */ + private String fileIds; private String createBy; private Date createTime; private String updateBy; diff --git a/klp-ui/src/api/hrm/index.js b/klp-ui/src/api/hrm/index.js index abd013ec..0568c011 100644 --- a/klp-ui/src/api/hrm/index.js +++ b/klp-ui/src/api/hrm/index.js @@ -687,7 +687,7 @@ export function delPayslip(slipIds) { // 指标快照 export function listStatSnapshot(query) { return request({ - url: '/hrm/stat/snapshot/list', + url: '/hrm/pay/stat/list', method: 'get', params: query }) diff --git a/klp-ui/src/components/FileUpload/index.vue b/klp-ui/src/components/FileUpload/index.vue index 63d2375a..0e834686 100644 --- a/klp-ui/src/components/FileUpload/index.vue +++ b/klp-ui/src/components/FileUpload/index.vue @@ -48,6 +48,11 @@ export default { props: { // 值 value: [String, Object, Array], + // 额外的自定义校验函数,返回 false 阻止上传 + beforeValidate: { + type: Function, + default: null, + }, // 数量限制 limit: { type: Number, @@ -127,6 +132,15 @@ export default { methods: { // 上传前校检格式和大小 handleBeforeUpload(file) { + // 额外自定义校验 + if (this.beforeValidate) { + const pass = this.beforeValidate(file); + if (pass === false) { + // 防止残留文件 + this.resetUpload(); + return false; + } + } // 校检文件类型 if (this.fileType) { const fileName = file.name.split('.'); @@ -189,6 +203,17 @@ export default { this.$modal.closeLoading(); } }, + // 重置上传状态(外部可调用) + resetUpload() { + this.number = 0; + this.uploadList = []; + this.fileList = []; + this.$emit("input", ""); + if (this.$refs.fileUpload) { + this.$refs.fileUpload.clearFiles(); + } + this.$modal.closeLoading(); + }, // 获取文件名称 getFileName(name) { // 如果是url那么取最后的名字 如果不是直接返回 diff --git a/klp-ui/src/views/hrm/attendance/index.vue b/klp-ui/src/views/hrm/attendance/index.vue index 1126d112..93b48b1d 100644 --- a/klp-ui/src/views/hrm/attendance/index.vue +++ b/klp-ui/src/views/hrm/attendance/index.vue @@ -1,12 +1,11 @@