迁移工具
This commit is contained in:
parent
8611358c6c
commit
83a408afa2
|
|
@ -1,14 +0,0 @@
|
|||
package com.engine.salary.entity.config;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SalaryBillConfig {
|
||||
private Long id;
|
||||
}
|
||||
|
|
@ -1,7 +1,8 @@
|
|||
package com.engine.salary.entity.config;
|
||||
|
||||
import com.engine.salary.entity.salaryarchive.config.ArchiveFieldConfig;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemConfig;
|
||||
import com.engine.salary.entity.salaryformula.config.FormluaConfig;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemAllConfig;
|
||||
import com.engine.salary.entity.taxagent.config.TaxAgentConfig;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamImplicit;
|
||||
|
|
@ -29,13 +30,17 @@ public class SalaryConfig {
|
|||
|
||||
//社保方案
|
||||
|
||||
//公式配置
|
||||
@XStreamAlias("FormluaConfig")
|
||||
private FormluaConfig formluaConfig;
|
||||
|
||||
//薪资项目
|
||||
@XStreamImplicit
|
||||
private List<SalaryItemConfig> salaryItemConfigs;
|
||||
@XStreamAlias("SalaryItemConfig")
|
||||
private SalaryItemAllConfig salaryItemConfig;
|
||||
|
||||
//字段管理
|
||||
@XStreamImplicit
|
||||
private List<ArchiveFieldConfig> archiveFieldConfig;
|
||||
@XStreamAlias("ArchiveFieldConfig")
|
||||
private ArchiveFieldConfig archiveFieldConfigs;
|
||||
|
||||
//扣缴义务人
|
||||
@XStreamImplicit
|
||||
|
|
|
|||
|
|
@ -1,176 +1,24 @@
|
|||
package com.engine.salary.entity.salaryarchive.config;
|
||||
|
||||
import com.engine.salary.enums.SalaryRoundingModeEnum;
|
||||
import com.engine.salary.enums.SalarySystemTypeEnum;
|
||||
import com.engine.salary.enums.SalaryValueTypeEnum;
|
||||
import com.engine.salary.enums.salaryitem.SalaryDataTypeEnum;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import com.thoughtworks.xstream.annotations.XStreamImplicit;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@XStreamAlias("ArchiveFieldConfig")
|
||||
public class ArchiveFieldConfig {
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@XStreamAlias("name")
|
||||
@XStreamAsAttribute
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 编号
|
||||
*/
|
||||
@XStreamAlias("code")
|
||||
@XStreamAsAttribute
|
||||
private String code;
|
||||
|
||||
/**
|
||||
* 是否是系统项目
|
||||
*
|
||||
* @see SalarySystemTypeEnum
|
||||
*/
|
||||
@XStreamAlias("systemType")
|
||||
@XStreamAsAttribute
|
||||
private Integer systemType;
|
||||
|
||||
/**
|
||||
* 系统薪资项目的id(是从哪个系统薪资项目复制过来的)
|
||||
*/
|
||||
@XStreamAlias("sysSalaryItemId")
|
||||
@XStreamAsAttribute
|
||||
private Long sysSalaryItemId;
|
||||
|
||||
/**
|
||||
* 默认使用。0:默认不适用、1:默认使用
|
||||
*/
|
||||
@XStreamAlias("useDefault")
|
||||
@XStreamAsAttribute
|
||||
private Integer useDefault;
|
||||
|
||||
/**
|
||||
* 薪资档案引用。0:薪资档案未引用、1:薪资档案引用
|
||||
*/
|
||||
@XStreamAlias("useInEmployeeSalary")
|
||||
@XStreamAsAttribute
|
||||
private Integer useInEmployeeSalary;
|
||||
|
||||
/**
|
||||
* 核算时隐藏
|
||||
*/
|
||||
@XStreamAlias("hideDefault")
|
||||
@XStreamAsAttribute
|
||||
private Integer hideDefault;
|
||||
|
||||
/**
|
||||
* 进位规则
|
||||
*
|
||||
* @see SalaryRoundingModeEnum
|
||||
*/
|
||||
@XStreamAlias("roundingMode")
|
||||
@XStreamAsAttribute
|
||||
private Integer roundingMode;
|
||||
|
||||
/**
|
||||
* 保留的小数位数
|
||||
*/
|
||||
@XStreamAlias("pattern")
|
||||
@XStreamAsAttribute
|
||||
private Integer pattern;
|
||||
|
||||
/**
|
||||
* 取值方式
|
||||
*
|
||||
* @see SalaryValueTypeEnum
|
||||
*/
|
||||
@XStreamAlias("valueType")
|
||||
@XStreamAsAttribute
|
||||
private Integer valueType;
|
||||
|
||||
/**
|
||||
* 字段类型
|
||||
*
|
||||
* @see SalaryDataTypeEnum
|
||||
*/
|
||||
@XStreamAlias("dataType")
|
||||
@XStreamAsAttribute
|
||||
private String dataType;
|
||||
|
||||
/**
|
||||
* 公式
|
||||
*/
|
||||
@XStreamAlias("formulaId")
|
||||
@XStreamAsAttribute
|
||||
private Long formulaId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@XStreamAlias("description")
|
||||
@XStreamAsAttribute
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 是否可以编辑。0:不可编辑、1:可编辑
|
||||
*/
|
||||
@XStreamAlias("canEdit")
|
||||
@XStreamAsAttribute
|
||||
private Integer canEdit;
|
||||
|
||||
/**
|
||||
* 可见性
|
||||
*/
|
||||
@XStreamAlias("sharedType")
|
||||
@XStreamAsAttribute
|
||||
private Integer sharedType;
|
||||
|
||||
/**
|
||||
* 可见范围
|
||||
*/
|
||||
@XStreamAlias("taxAgentIds")
|
||||
@XStreamAsAttribute
|
||||
private String taxAgentIds;
|
||||
|
||||
/**
|
||||
* 0不可删除,1可删除
|
||||
*/
|
||||
@XStreamAlias("canDelete")
|
||||
@XStreamAsAttribute
|
||||
private Integer canDelete;
|
||||
|
||||
/**
|
||||
* 排序
|
||||
*/
|
||||
@XStreamAlias("sortedIndex")
|
||||
@XStreamAsAttribute
|
||||
private Integer sortedIndex;
|
||||
|
||||
/**
|
||||
* 宽度
|
||||
*/
|
||||
@XStreamAlias("width")
|
||||
@XStreamAsAttribute
|
||||
private Integer width;
|
||||
|
||||
/**
|
||||
* 默认值
|
||||
*/
|
||||
@XStreamAlias("defaultValue")
|
||||
@XStreamAsAttribute
|
||||
private String defaultValue;
|
||||
@XStreamImplicit
|
||||
List<SalaryItemPO> salaryItems;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,27 @@
|
|||
package com.engine.salary.entity.salaryformula.config;
|
||||
|
||||
import com.engine.salary.entity.salaryformula.po.FormulaPO;
|
||||
import com.engine.salary.entity.salaryformula.po.FormulaVar;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamImplicit;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@XStreamAlias("FormluaConfig")
|
||||
public class FormluaConfig {
|
||||
|
||||
@XStreamImplicit
|
||||
private List<FormulaPO> formulas;
|
||||
|
||||
@XStreamImplicit
|
||||
private List<FormulaVar> formulaVars;
|
||||
|
||||
}
|
||||
|
|
@ -1,5 +1,7 @@
|
|||
package com.engine.salary.entity.salaryformula.po;
|
||||
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -12,68 +14,99 @@ import java.util.Date;
|
|||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@XStreamAlias("Formula")
|
||||
public class FormulaPO {
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@XStreamAlias("name")
|
||||
@XStreamAsAttribute
|
||||
private String name;
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@XStreamAlias("description")
|
||||
@XStreamAsAttribute
|
||||
private String description;
|
||||
/**
|
||||
* 模块
|
||||
*/
|
||||
@XStreamAlias("module")
|
||||
@XStreamAsAttribute
|
||||
private String module;
|
||||
/**
|
||||
* 用途
|
||||
*/
|
||||
@XStreamAlias("useFor")
|
||||
@XStreamAsAttribute
|
||||
private String useFor;
|
||||
/**
|
||||
* 引用类型
|
||||
*/
|
||||
@XStreamAlias("referenceType")
|
||||
@XStreamAsAttribute
|
||||
private String referenceType;
|
||||
/**
|
||||
* 返回类型
|
||||
*/
|
||||
@XStreamAlias("returnType")
|
||||
@XStreamAsAttribute
|
||||
private String returnType;
|
||||
/**
|
||||
* 校验类型
|
||||
*/
|
||||
@XStreamAlias("validateType")
|
||||
@XStreamAsAttribute
|
||||
private String validateType;
|
||||
/**
|
||||
* 扩展参数
|
||||
*/
|
||||
@XStreamAlias("extendParam")
|
||||
@XStreamAsAttribute
|
||||
private String extendParam;
|
||||
/**
|
||||
* 公式内容
|
||||
*/
|
||||
@XStreamAlias("formula")
|
||||
@XStreamAsAttribute
|
||||
private String formula;
|
||||
|
||||
/**
|
||||
* 公式实际运行脚本
|
||||
*/
|
||||
@XStreamAlias("formulaRunScript")
|
||||
@XStreamAsAttribute
|
||||
private String formulaRunScript;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@XStreamAlias("creator")
|
||||
@XStreamAsAttribute
|
||||
private Long creator;
|
||||
/**
|
||||
* 是否删除0否1是
|
||||
*/
|
||||
@XStreamAlias("deleteType")
|
||||
@XStreamAsAttribute
|
||||
private Integer deleteType;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@XStreamAlias("createTime")
|
||||
@XStreamAsAttribute
|
||||
private Date createTime;
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@XStreamAlias("updateTime")
|
||||
@XStreamAsAttribute
|
||||
private Date updateTime;
|
||||
|
||||
//主键id集合
|
||||
|
|
|
|||
|
|
@ -1,5 +1,8 @@
|
|||
package com.engine.salary.entity.salaryformula.po;
|
||||
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import com.thoughtworks.xstream.annotations.XStreamOmitField;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -12,58 +15,84 @@ import java.util.Date;
|
|||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@XStreamAlias("FormulaVar")
|
||||
public class FormulaVar {
|
||||
/**
|
||||
* id
|
||||
*/
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@XStreamAlias("name")
|
||||
@XStreamAsAttribute
|
||||
private String name;
|
||||
/**
|
||||
* 公式id
|
||||
*/
|
||||
@XStreamAlias("formulaId")
|
||||
@XStreamAsAttribute
|
||||
private Long formulaId;
|
||||
/**
|
||||
* 字段id
|
||||
*/
|
||||
@XStreamAlias("fieldId")
|
||||
@XStreamAsAttribute
|
||||
private String fieldId;
|
||||
/**
|
||||
* 字段名称
|
||||
*/
|
||||
@XStreamAlias("fieldName")
|
||||
@XStreamAsAttribute
|
||||
private String fieldName;
|
||||
/**
|
||||
* 字段类型,number,string
|
||||
*/
|
||||
@XStreamAlias("fieldType")
|
||||
@XStreamAsAttribute
|
||||
private String fieldType;
|
||||
/**
|
||||
* 来源
|
||||
*/
|
||||
@XStreamAlias("source")
|
||||
@XStreamAsAttribute
|
||||
private String source;
|
||||
/**
|
||||
* 排序
|
||||
*/
|
||||
@XStreamAlias("orderIndex")
|
||||
@XStreamAsAttribute
|
||||
private Integer orderIndex;
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@XStreamAlias("creator")
|
||||
@XStreamAsAttribute
|
||||
private Long creator;
|
||||
/**
|
||||
* 是否删除,0否1是
|
||||
*/
|
||||
@XStreamAlias("deleteType")
|
||||
@XStreamAsAttribute
|
||||
private Integer deleteType;
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@XStreamAlias("createTime")
|
||||
@XStreamAsAttribute
|
||||
private Date createTime;
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@XStreamAlias("updateTime")
|
||||
@XStreamAsAttribute
|
||||
private Date updateTime;
|
||||
|
||||
|
||||
//值
|
||||
@XStreamOmitField
|
||||
private String content;
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,23 @@
|
|||
package com.engine.salary.entity.salaryitem.config;
|
||||
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamImplicit;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@XStreamAlias("SalaryItemConfig")
|
||||
public class SalaryItemAllConfig {
|
||||
|
||||
@XStreamImplicit
|
||||
List<SalaryItemPO> salaryItems;
|
||||
}
|
||||
|
|
@ -5,6 +5,8 @@ import com.engine.salary.enums.SalaryRoundingModeEnum;
|
|||
import com.engine.salary.enums.SalarySystemTypeEnum;
|
||||
import com.engine.salary.enums.SalaryValueTypeEnum;
|
||||
import com.engine.salary.enums.salaryitem.SalaryDataTypeEnum;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -27,24 +29,31 @@ import java.util.Date;
|
|||
@AllArgsConstructor
|
||||
//hrsa_salary_item
|
||||
@ElogTransform(name = "薪资项目")
|
||||
@XStreamAlias("SalaryItem")
|
||||
public class SalaryItemPO {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@ElogTransform(name = "主键id")
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@ElogTransform(name = "名称")
|
||||
@XStreamAlias("name")
|
||||
@XStreamAsAttribute
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 编号
|
||||
*/
|
||||
@ElogTransform(name = "编号")
|
||||
@XStreamAlias("code")
|
||||
@XStreamAsAttribute
|
||||
private String code;
|
||||
|
||||
/**
|
||||
|
|
@ -53,30 +62,40 @@ public class SalaryItemPO {
|
|||
* @see SalarySystemTypeEnum
|
||||
*/
|
||||
@ElogTransform(name = "是否是系统项目")
|
||||
@XStreamAlias("systemType")
|
||||
@XStreamAsAttribute
|
||||
private Integer systemType;
|
||||
|
||||
/**
|
||||
* 系统薪资项目的id(是从哪个系统薪资项目复制过来的)
|
||||
*/
|
||||
@ElogTransform(name = "系统薪资项目的id")
|
||||
@XStreamAlias("sysSalaryItemId")
|
||||
@XStreamAsAttribute
|
||||
private Long sysSalaryItemId;
|
||||
|
||||
/**
|
||||
* 默认使用。0:默认不适用、1:默认使用
|
||||
*/
|
||||
@ElogTransform(name = "默认使用")
|
||||
@XStreamAlias("useDefault")
|
||||
@XStreamAsAttribute
|
||||
private Integer useDefault;
|
||||
|
||||
/**
|
||||
* 薪资档案引用。0:薪资档案未引用、1:薪资档案引用
|
||||
*/
|
||||
@ElogTransform(name = "薪资档案引用")
|
||||
@XStreamAlias("useInEmployeeSalary")
|
||||
@XStreamAsAttribute
|
||||
private Integer useInEmployeeSalary;
|
||||
|
||||
/**
|
||||
* 核算时隐藏
|
||||
*/
|
||||
@ElogTransform(name = "核算时隐藏")
|
||||
@XStreamAlias("hideDefault")
|
||||
@XStreamAsAttribute
|
||||
private Integer hideDefault;
|
||||
|
||||
/**
|
||||
|
|
@ -85,12 +104,16 @@ public class SalaryItemPO {
|
|||
* @see SalaryRoundingModeEnum
|
||||
*/
|
||||
@ElogTransform(name = "进位规则")
|
||||
@XStreamAlias("roundingMode")
|
||||
@XStreamAsAttribute
|
||||
private Integer roundingMode;
|
||||
|
||||
/**
|
||||
* 保留的小数位数
|
||||
*/
|
||||
@ElogTransform(name = "保留的小数位数")
|
||||
@XStreamAlias("pattern")
|
||||
@XStreamAsAttribute
|
||||
private Integer pattern;
|
||||
|
||||
/**
|
||||
|
|
@ -99,6 +122,8 @@ public class SalaryItemPO {
|
|||
* @see SalaryValueTypeEnum
|
||||
*/
|
||||
@ElogTransform(name = "取值方式")
|
||||
@XStreamAlias("valueType")
|
||||
@XStreamAsAttribute
|
||||
private Integer valueType;
|
||||
|
||||
/**
|
||||
|
|
@ -107,54 +132,72 @@ public class SalaryItemPO {
|
|||
* @see SalaryDataTypeEnum
|
||||
*/
|
||||
@ElogTransform(name = "字段类型")
|
||||
@XStreamAlias("dataType")
|
||||
@XStreamAsAttribute
|
||||
private String dataType;
|
||||
|
||||
/**
|
||||
* 公式
|
||||
*/
|
||||
@ElogTransform(name = "公式")
|
||||
@XStreamAlias("formulaId")
|
||||
@XStreamAsAttribute
|
||||
private Long formulaId;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ElogTransform(name = "备注")
|
||||
@XStreamAlias("description")
|
||||
@XStreamAsAttribute
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 是否可以编辑。0:不可编辑、1:可编辑
|
||||
*/
|
||||
@ElogTransform(name = "是否可以编辑")
|
||||
@XStreamAlias("canEdit")
|
||||
@XStreamAsAttribute
|
||||
private Integer canEdit;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@ElogTransform(name = "租户key")
|
||||
@XStreamAlias("tenantKey")
|
||||
@XStreamAsAttribute
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@ElogTransform(name = "创建人id")
|
||||
@XStreamAlias("creator")
|
||||
@XStreamAsAttribute
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@ElogTransform(name = "是否删除")
|
||||
@XStreamAlias("deleteType")
|
||||
@XStreamAsAttribute
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ElogTransform(name = "创建时间")
|
||||
@XStreamAlias("createTime")
|
||||
@XStreamAsAttribute
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@ElogTransform(name = "更新时间")
|
||||
@XStreamAlias("updateTime")
|
||||
@XStreamAsAttribute
|
||||
private Date updateTime;
|
||||
|
||||
//查询条件
|
||||
|
|
@ -166,35 +209,47 @@ public class SalaryItemPO {
|
|||
* 可见性
|
||||
*/
|
||||
@ElogTransform(name = "可见性")
|
||||
@XStreamAlias("sharedType")
|
||||
@XStreamAsAttribute
|
||||
private Integer sharedType;
|
||||
|
||||
/**
|
||||
* 可见范围
|
||||
*/
|
||||
@ElogTransform(name = "可见范围")
|
||||
@XStreamAlias("taxAgentIds")
|
||||
@XStreamAsAttribute
|
||||
private String taxAgentIds;
|
||||
|
||||
/**
|
||||
* 0不可删除,1可删除
|
||||
*/
|
||||
@ElogTransform(name = "是否已经删除")
|
||||
@XStreamAlias("canDelete")
|
||||
@XStreamAsAttribute
|
||||
private Integer canDelete;
|
||||
|
||||
/**
|
||||
* 排序
|
||||
*/
|
||||
@ElogTransform(name = "排序")
|
||||
@XStreamAlias("sortedIndex")
|
||||
@XStreamAsAttribute
|
||||
private Integer sortedIndex;
|
||||
|
||||
/**
|
||||
* 宽度
|
||||
*/
|
||||
@ElogTransform(name = "宽度")
|
||||
@XStreamAlias("width")
|
||||
@XStreamAsAttribute
|
||||
private Integer width;
|
||||
|
||||
/**
|
||||
* 默认值
|
||||
*/
|
||||
@ElogTransform(name = "默认值")
|
||||
@XStreamAlias("defaultValue")
|
||||
@XStreamAsAttribute
|
||||
private String defaultValue;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,12 +1,15 @@
|
|||
package com.engine.salary.entity.salarysob.config;
|
||||
|
||||
import com.engine.salary.entity.salarysob.po.*;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import com.thoughtworks.xstream.annotations.XStreamImplicit;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
|
|
@ -14,91 +17,22 @@ import lombok.NoArgsConstructor;
|
|||
@XStreamAlias("SalarySobConfig")
|
||||
public class SalarySobConfig {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
@XStreamAlias("salarySob")
|
||||
private SalarySobPO salarySob;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
@XStreamAlias("name")
|
||||
@XStreamAsAttribute
|
||||
private String name;
|
||||
@XStreamImplicit
|
||||
private List<SalarySobEmpFieldPO> salarySobEmpFields;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人的主键id
|
||||
*/
|
||||
@XStreamAlias("taxAgentId")
|
||||
@XStreamAsAttribute
|
||||
private Long taxAgentId;
|
||||
@XStreamImplicit
|
||||
private List<SalarySobItemGroupPO> salarySobItemGroups;
|
||||
|
||||
/**
|
||||
* 应税项目。1:正常工资薪金所得
|
||||
*/
|
||||
@XStreamAlias("incomeCategory")
|
||||
@XStreamAsAttribute
|
||||
private Integer incomeCategory;
|
||||
@XStreamImplicit
|
||||
private List<SalarySobItemPO> salarySobItems;
|
||||
|
||||
/**
|
||||
* 薪资周期。1:上上月、2:上月、3:本月、4:下月
|
||||
*/
|
||||
@XStreamAlias("salaryCycleType")
|
||||
@XStreamAsAttribute
|
||||
private Integer salaryCycleType;
|
||||
@XStreamImplicit
|
||||
private List<SalarySobBackItemPO> salarySobBackItems;
|
||||
|
||||
/**
|
||||
* 薪资周期的起始日期
|
||||
*/
|
||||
@XStreamAlias("salaryCycleFromDay")
|
||||
@XStreamAsAttribute
|
||||
private Integer salaryCycleFromDay;
|
||||
|
||||
/**
|
||||
* 税款所属期。1:上上月、2:上月、3:本月、4:下月
|
||||
*/
|
||||
@XStreamAlias("taxCycleType")
|
||||
@XStreamAsAttribute
|
||||
private Integer taxCycleType;
|
||||
|
||||
/**
|
||||
* 考勤周期。1:上上月、2:上月、3:本月、4:下月
|
||||
*/
|
||||
@XStreamAlias("attendCycleType")
|
||||
@XStreamAsAttribute
|
||||
private Integer attendCycleType;
|
||||
|
||||
/**
|
||||
* 考勤周期的起始日期
|
||||
*/
|
||||
@XStreamAlias("attendCycleFromDay")
|
||||
@XStreamAsAttribute
|
||||
private Integer attendCycleFromDay;
|
||||
|
||||
/**
|
||||
* 社保福利所属期。1:上上月、2:上月、3:本月、4:下月
|
||||
*/
|
||||
@XStreamAlias("socialSecurityCycleType")
|
||||
@XStreamAsAttribute
|
||||
private Integer socialSecurityCycleType;
|
||||
|
||||
/**
|
||||
* 是否禁用。0:正常使用、1:禁用
|
||||
*/
|
||||
@XStreamAlias("disable")
|
||||
@XStreamAsAttribute
|
||||
private Integer disable;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
@XStreamAlias("description")
|
||||
@XStreamAsAttribute
|
||||
private String description;
|
||||
|
||||
|
||||
// private List<SalaryBillConfig> salaryBillConfigs;
|
||||
@XStreamImplicit
|
||||
private List<SalarySobAdjustRulePO> salarySobAdjustRules;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
package com.engine.salary.entity.salarysob.po;
|
||||
|
||||
import com.engine.salary.enums.salarysob.SalarySobAdjustRuleTypeEnum;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -24,26 +26,35 @@ import java.util.Date;
|
|||
@AllArgsConstructor
|
||||
@Builder
|
||||
//hrsa_salary_sob_adjust_rule
|
||||
@XStreamAlias("SalarySobAdjustRule")
|
||||
public class SalarySobAdjustRulePO {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 薪资账套id
|
||||
*/
|
||||
@XStreamAlias("salarySobId")
|
||||
@XStreamAsAttribute
|
||||
private Long salarySobId;
|
||||
|
||||
/**
|
||||
* 薪资项目id
|
||||
*/
|
||||
@XStreamAlias("salaryItemId")
|
||||
@XStreamAsAttribute
|
||||
private Long salaryItemId;
|
||||
|
||||
/**
|
||||
* 生效日期
|
||||
*/
|
||||
@XStreamAlias("dayOfMonth")
|
||||
@XStreamAsAttribute
|
||||
private Integer dayOfMonth;
|
||||
|
||||
/**
|
||||
|
|
@ -51,6 +62,8 @@ public class SalarySobAdjustRulePO {
|
|||
*
|
||||
* @see SalarySobAdjustRuleTypeEnum
|
||||
*/
|
||||
@XStreamAlias("beforeAdjustmentType")
|
||||
@XStreamAsAttribute
|
||||
private Integer beforeAdjustmentType;
|
||||
|
||||
/**
|
||||
|
|
@ -58,31 +71,43 @@ public class SalarySobAdjustRulePO {
|
|||
*
|
||||
* @see SalarySobAdjustRuleTypeEnum
|
||||
*/
|
||||
@XStreamAlias("afterAdjustmentType")
|
||||
@XStreamAsAttribute
|
||||
private Integer afterAdjustmentType;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@XStreamAlias("tenantKey")
|
||||
@XStreamAsAttribute
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@XStreamAlias("creator")
|
||||
@XStreamAsAttribute
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@XStreamAlias("deleteType")
|
||||
@XStreamAsAttribute
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@XStreamAlias("createTime")
|
||||
@XStreamAsAttribute
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@XStreamAlias("updateTime")
|
||||
@XStreamAsAttribute
|
||||
private Date updateTime;
|
||||
|
||||
Collection<Long> ids;
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@ import com.engine.salary.enums.SalaryRoundingModeEnum;
|
|||
import com.engine.salary.enums.SalaryValueTypeEnum;
|
||||
import com.engine.salary.enums.salaryitem.SalaryDataTypeEnum;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -26,26 +28,35 @@ import java.util.stream.Collectors;
|
|||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@XStreamAlias("SalarySobBackItem")
|
||||
public class SalarySobBackItemPO{
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 薪资账套id
|
||||
*/
|
||||
@XStreamAlias("salarySobId")
|
||||
@XStreamAsAttribute
|
||||
private Long salarySobId;
|
||||
|
||||
/**
|
||||
* 薪资项目id
|
||||
*/
|
||||
@XStreamAlias("salaryItemId")
|
||||
@XStreamAsAttribute
|
||||
private Long salaryItemId;
|
||||
|
||||
/**
|
||||
* 薪资项目code
|
||||
*/
|
||||
@XStreamAlias("salaryItemCode")
|
||||
@XStreamAsAttribute
|
||||
private String salaryItemCode;
|
||||
|
||||
/**
|
||||
|
|
@ -53,6 +64,8 @@ public class SalarySobBackItemPO{
|
|||
*
|
||||
* @see SalaryDataTypeEnum
|
||||
*/
|
||||
@XStreamAlias("dataType")
|
||||
@XStreamAsAttribute
|
||||
private String dataType;
|
||||
|
||||
/**
|
||||
|
|
@ -60,11 +73,15 @@ public class SalarySobBackItemPO{
|
|||
*
|
||||
* @see SalaryRoundingModeEnum
|
||||
*/
|
||||
@XStreamAlias("roundingMode")
|
||||
@XStreamAsAttribute
|
||||
private Integer roundingMode;
|
||||
|
||||
/**
|
||||
* 保留的小数位数
|
||||
*/
|
||||
@XStreamAlias("pattern")
|
||||
@XStreamAsAttribute
|
||||
private Integer pattern;
|
||||
|
||||
/**
|
||||
|
|
@ -72,52 +89,72 @@ public class SalarySobBackItemPO{
|
|||
*
|
||||
* @see SalaryValueTypeEnum
|
||||
*/
|
||||
@XStreamAlias("valueType")
|
||||
@XStreamAsAttribute
|
||||
private Integer valueType;
|
||||
|
||||
/**
|
||||
* 公式id
|
||||
*/
|
||||
@XStreamAlias("formulaId")
|
||||
@XStreamAsAttribute
|
||||
private Long formulaId;
|
||||
|
||||
/**
|
||||
* 0:已发项目、1:补发薪资项目
|
||||
*/
|
||||
@XStreamAlias("backCalcType")
|
||||
@XStreamAsAttribute
|
||||
private Integer backCalcType;
|
||||
|
||||
/**
|
||||
* 默认值
|
||||
*/
|
||||
@XStreamAlias("defaultValue")
|
||||
@XStreamAsAttribute
|
||||
private String defaultValue;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@XStreamAlias("tenantKey")
|
||||
@XStreamAsAttribute
|
||||
@JsonIgnore
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@XStreamAlias("creator")
|
||||
@XStreamAsAttribute
|
||||
@JsonIgnore
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@XStreamAlias("deleteType")
|
||||
@XStreamAsAttribute
|
||||
@JsonIgnore
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@XStreamAlias("createTime")
|
||||
@XStreamAsAttribute
|
||||
@JsonIgnore
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@XStreamAlias("updateTime")
|
||||
@XStreamAsAttribute
|
||||
@JsonIgnore
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 默认值
|
||||
*/
|
||||
private String defaultValue;
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
package com.engine.salary.entity.salarysob.po;
|
||||
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -27,56 +29,77 @@ import java.util.stream.Collectors;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_salary_sob_emp_field
|
||||
@XStreamAlias("SalarySobEmpField")
|
||||
public class SalarySobEmpFieldPO {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 薪资账套id
|
||||
*/
|
||||
@XStreamAlias("salarySobId")
|
||||
@XStreamAsAttribute
|
||||
private Long salarySobId;
|
||||
|
||||
/**
|
||||
* 字段code
|
||||
*/
|
||||
@XStreamAlias("fieldCode")
|
||||
@XStreamAsAttribute
|
||||
private String fieldCode;
|
||||
|
||||
/**
|
||||
* 排序字段
|
||||
*/
|
||||
@XStreamAlias("sortedIndex")
|
||||
@XStreamAsAttribute
|
||||
private Integer sortedIndex;
|
||||
|
||||
/**
|
||||
* 是否可以删除
|
||||
*/
|
||||
@XStreamAlias("canDelete")
|
||||
@XStreamAsAttribute
|
||||
private Integer canDelete;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@XStreamAlias("tenantKey")
|
||||
@XStreamAsAttribute
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@XStreamAlias("creator")
|
||||
@XStreamAsAttribute
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@XStreamAlias("deleteType")
|
||||
@XStreamAsAttribute
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@XStreamAlias("createTime")
|
||||
@XStreamAsAttribute
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@XStreamAlias("updateTime")
|
||||
@XStreamAsAttribute
|
||||
private Date updateTime;
|
||||
|
||||
Collection<Long> ids;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
package com.engine.salary.entity.salarysob.po;
|
||||
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -25,60 +27,85 @@ import java.util.stream.Collectors;
|
|||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
//hrsa_salary_sob_item_group
|
||||
@XStreamAlias("SalarySobItemGroup")
|
||||
public class SalarySobItemGroupPO {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 薪资账套的id
|
||||
*/
|
||||
@XStreamAlias("salarySobId")
|
||||
@XStreamAsAttribute
|
||||
private Long salarySobId;
|
||||
|
||||
/**
|
||||
* 薪资账套中薪资项目分组的名称
|
||||
*/
|
||||
@XStreamAlias("name")
|
||||
@XStreamAsAttribute
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 排序字段
|
||||
*/
|
||||
@XStreamAlias("sortedIndex")
|
||||
@XStreamAsAttribute
|
||||
private Integer sortedIndex;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@XStreamAlias("description")
|
||||
@XStreamAsAttribute
|
||||
private String description;
|
||||
|
||||
|
||||
//该分类是否隐藏(0不隐藏,1隐藏)
|
||||
@XStreamAlias("itemHide")
|
||||
@XStreamAsAttribute
|
||||
private Long itemHide;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@XStreamAlias("tenantKey")
|
||||
@XStreamAsAttribute
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@XStreamAlias("creator")
|
||||
@XStreamAsAttribute
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@XStreamAlias("deleteType")
|
||||
@XStreamAsAttribute
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@XStreamAlias("createTime")
|
||||
@XStreamAsAttribute
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@XStreamAlias("updateTime")
|
||||
@XStreamAsAttribute
|
||||
private Date updateTime;
|
||||
|
||||
//该分类是否隐藏(0不隐藏,1隐藏)
|
||||
private Long itemHide;
|
||||
|
||||
Collection<Long> ids;
|
||||
|
||||
|
|
|
|||
|
|
@ -3,6 +3,8 @@ package com.engine.salary.entity.salarysob.po;
|
|||
import com.engine.hrmelog.annotation.ElogTransform;
|
||||
import com.engine.salary.enums.SalaryRoundingModeEnum;
|
||||
import com.engine.salary.enums.SalaryValueTypeEnum;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -29,83 +31,73 @@ import java.util.stream.Collectors;
|
|||
@AllArgsConstructor
|
||||
//hrsa_salary_sob_item
|
||||
@ElogTransform( name="薪资账套薪资项目" )
|
||||
@XStreamAlias("SalarySobItem")
|
||||
public class SalarySobItemPO {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 薪资账套的id
|
||||
*/
|
||||
@XStreamAlias("salarySobId")
|
||||
@XStreamAsAttribute
|
||||
private Long salarySobId;
|
||||
|
||||
/**
|
||||
* 薪资项目的id
|
||||
*/
|
||||
@XStreamAlias("salaryItemId")
|
||||
@XStreamAsAttribute
|
||||
private Long salaryItemId;
|
||||
|
||||
/**
|
||||
* 薪资账套薪资项目分组id
|
||||
*/
|
||||
@XStreamAlias("salarySobItemGroupId")
|
||||
@XStreamAsAttribute
|
||||
private Long salarySobItemGroupId;
|
||||
|
||||
/**
|
||||
* 公式
|
||||
*/
|
||||
@XStreamAlias("formulaId")
|
||||
@XStreamAsAttribute
|
||||
private Long formulaId;
|
||||
|
||||
/**
|
||||
* 排序字段
|
||||
*/
|
||||
@XStreamAlias("sortedIndex")
|
||||
@XStreamAsAttribute
|
||||
private Integer sortedIndex;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@XStreamAlias("description")
|
||||
@XStreamAsAttribute
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 是否可以删除。0:不可删除、1:可以删除
|
||||
*/
|
||||
private Integer canDelete;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 进位规则
|
||||
*
|
||||
* @see SalaryRoundingModeEnum
|
||||
*/
|
||||
@XStreamAlias("roundingMode")
|
||||
@XStreamAsAttribute
|
||||
private Integer roundingMode;
|
||||
|
||||
/**
|
||||
* 保留的小数位数
|
||||
*/
|
||||
@XStreamAlias("pattern")
|
||||
@XStreamAsAttribute
|
||||
private Integer pattern;
|
||||
|
||||
/**
|
||||
|
|
@ -113,17 +105,65 @@ public class SalarySobItemPO {
|
|||
*
|
||||
* @see SalaryValueTypeEnum
|
||||
*/
|
||||
@XStreamAlias("valueType")
|
||||
@XStreamAsAttribute
|
||||
private Integer valueType;
|
||||
|
||||
|
||||
//该分类是否隐藏(0不隐藏,1隐藏)
|
||||
@XStreamAlias("itemHide")
|
||||
@XStreamAsAttribute
|
||||
private Long itemHide;
|
||||
|
||||
/**
|
||||
* 默认值
|
||||
*/
|
||||
@XStreamAlias("defaultValue")
|
||||
@XStreamAsAttribute
|
||||
private String defaultValue;
|
||||
|
||||
/**
|
||||
* 是否可以删除。0:不可删除、1:可以删除
|
||||
*/
|
||||
@XStreamAlias("canDelete")
|
||||
@XStreamAsAttribute
|
||||
private Integer canDelete;
|
||||
|
||||
/**
|
||||
* 租户key
|
||||
*/
|
||||
@XStreamAlias("tenantKey")
|
||||
@XStreamAsAttribute
|
||||
private String tenantKey;
|
||||
|
||||
/**
|
||||
* 创建人id
|
||||
*/
|
||||
@XStreamAlias("creator")
|
||||
@XStreamAsAttribute
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 是否删除
|
||||
*/
|
||||
@XStreamAlias("deleteType")
|
||||
@XStreamAsAttribute
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@XStreamAlias("createTime")
|
||||
@XStreamAsAttribute
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@XStreamAlias("updateTime")
|
||||
@XStreamAsAttribute
|
||||
private Date updateTime;
|
||||
|
||||
//in
|
||||
Collection<Long> ids;
|
||||
Collection<Long> salarySobIds;
|
||||
|
|
|
|||
|
|
@ -2,6 +2,8 @@ package com.engine.salary.entity.salarysob.po;
|
|||
|
||||
import com.engine.hrmelog.annotation.ElogTransform;
|
||||
import com.engine.salary.util.valid.Compare;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAlias;
|
||||
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
|
@ -21,6 +23,7 @@ import java.util.Date;
|
|||
@AllArgsConstructor
|
||||
@ElogTransform( name="薪资账套" )
|
||||
//hrsa_salary_sob
|
||||
@XStreamAlias("SalarySobPO")
|
||||
public class SalarySobPO {
|
||||
|
||||
/**
|
||||
|
|
@ -28,6 +31,8 @@ public class SalarySobPO {
|
|||
*/
|
||||
@ElogTransform( name="主键" )
|
||||
@Compare
|
||||
@XStreamAlias("id")
|
||||
@XStreamAsAttribute
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
|
|
@ -35,12 +40,16 @@ public class SalarySobPO {
|
|||
*/
|
||||
@ElogTransform( name="名称" )
|
||||
@Compare
|
||||
@XStreamAlias("name")
|
||||
@XStreamAsAttribute
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 个税扣缴义务人的主键id
|
||||
*/
|
||||
@ElogTransform( name="个税扣缴义务人id" )
|
||||
@XStreamAlias("taxAgentId")
|
||||
@XStreamAsAttribute
|
||||
private Long taxAgentId;
|
||||
|
||||
/**
|
||||
|
|
@ -48,6 +57,8 @@ public class SalarySobPO {
|
|||
*/
|
||||
@ElogTransform( name="薪资类型" )
|
||||
@Compare
|
||||
@XStreamAlias("incomeCategory")
|
||||
@XStreamAsAttribute
|
||||
private Integer incomeCategory;
|
||||
|
||||
/**
|
||||
|
|
@ -55,6 +66,8 @@ public class SalarySobPO {
|
|||
*/
|
||||
@ElogTransform( name="薪资周期" )
|
||||
@Compare
|
||||
@XStreamAlias("salaryCycleType")
|
||||
@XStreamAsAttribute
|
||||
private Integer salaryCycleType;
|
||||
|
||||
/**
|
||||
|
|
@ -62,6 +75,8 @@ public class SalarySobPO {
|
|||
*/
|
||||
@ElogTransform( name="薪资周期起始日期" )
|
||||
@Compare
|
||||
@XStreamAlias("salaryCycleFromDay")
|
||||
@XStreamAsAttribute
|
||||
private Integer salaryCycleFromDay;
|
||||
|
||||
/**
|
||||
|
|
@ -69,6 +84,8 @@ public class SalarySobPO {
|
|||
*/
|
||||
@ElogTransform( name="税款所属期" )
|
||||
@Compare
|
||||
@XStreamAlias("taxCycleType")
|
||||
@XStreamAsAttribute
|
||||
private Integer taxCycleType;
|
||||
|
||||
/**
|
||||
|
|
@ -76,6 +93,8 @@ public class SalarySobPO {
|
|||
*/
|
||||
@ElogTransform( name="考勤周期" )
|
||||
@Compare
|
||||
@XStreamAlias("attendCycleType")
|
||||
@XStreamAsAttribute
|
||||
private Integer attendCycleType;
|
||||
|
||||
/**
|
||||
|
|
@ -83,6 +102,8 @@ public class SalarySobPO {
|
|||
*/
|
||||
@ElogTransform( name="考勤周期起始日期" )
|
||||
@Compare
|
||||
@XStreamAlias("attendCycleFromDay")
|
||||
@XStreamAsAttribute
|
||||
private Integer attendCycleFromDay;
|
||||
|
||||
/**
|
||||
|
|
@ -90,48 +111,64 @@ public class SalarySobPO {
|
|||
*/
|
||||
@ElogTransform( name="社保福利所属期" )
|
||||
@Compare
|
||||
@XStreamAlias("socialSecurityCycleType")
|
||||
@XStreamAsAttribute
|
||||
private Integer socialSecurityCycleType;
|
||||
|
||||
/**
|
||||
* 是否禁用。0:正常使用、1:禁用
|
||||
*/
|
||||
@ElogTransform( name="是否禁用" )
|
||||
@XStreamAlias("disable")
|
||||
@XStreamAsAttribute
|
||||
private Integer disable;
|
||||
|
||||
/**
|
||||
* 描述
|
||||
*/
|
||||
@ElogTransform( name="描述" )
|
||||
@XStreamAlias("description")
|
||||
@XStreamAsAttribute
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 创建人
|
||||
*/
|
||||
@ElogTransform( name="创建人" )
|
||||
@XStreamAlias("creator")
|
||||
@XStreamAsAttribute
|
||||
private Long creator;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@ElogTransform( name="创建时间" )
|
||||
@XStreamAlias("createTime")
|
||||
@XStreamAsAttribute
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 更新时间
|
||||
*/
|
||||
@ElogTransform( name="更新时间" )
|
||||
@XStreamAlias("updateTime")
|
||||
@XStreamAsAttribute
|
||||
private Date updateTime;
|
||||
|
||||
/**
|
||||
* 是否已删除。0:未删除、1:已删除
|
||||
*/
|
||||
@ElogTransform( name="是否已删除" )
|
||||
@XStreamAlias("deleteType")
|
||||
@XStreamAsAttribute
|
||||
private Integer deleteType;
|
||||
|
||||
/**
|
||||
* 租户ID
|
||||
*/
|
||||
@ElogTransform( name="租户" )
|
||||
@XStreamAlias("tenantKey")
|
||||
@XStreamAsAttribute
|
||||
private String tenantKey;
|
||||
|
||||
Collection<Long> ids;
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
package com.engine.salary.mapper.archive;
|
||||
|
||||
import com.engine.salary.entity.salaryarchive.config.ArchiveFieldConfig;
|
||||
import com.engine.salary.entity.salaryarchive.dto.SalaryItemAdjustRecordListDTO;
|
||||
import com.engine.salary.entity.salaryarchive.param.SalaryArchiveItemQueryParam;
|
||||
import com.engine.salary.entity.salaryarchive.param.SalaryItemAdjustRecordQueryParam;
|
||||
import com.engine.salary.entity.salaryarchive.po.SalaryArchiveItemPO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
public interface SalaryArchiveItemMapper {
|
||||
|
|
@ -99,5 +97,4 @@ public interface SalaryArchiveItemMapper {
|
|||
|
||||
int batchUpdate(@Param("collection") List<SalaryArchiveItemPO> pos);
|
||||
|
||||
List<ArchiveFieldConfig> getAllConfig(@Param("ids") Collection<Long> ids);
|
||||
}
|
||||
|
|
@ -1193,21 +1193,5 @@
|
|||
|
||||
|
||||
|
||||
<select id="getAllConfig" resultMap="configResultMap">
|
||||
select
|
||||
<include refid="itemColumns"/>
|
||||
from hrsa_salary_item item
|
||||
where item.delete_type=0 and item.use_in_employee_salary = 1
|
||||
<if test="ids != null and ids.size()>0">
|
||||
AND item.id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</if>
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
@ -1,6 +1,5 @@
|
|||
package com.engine.salary.mapper.salarysob;
|
||||
|
||||
import com.engine.salary.entity.salarysob.config.SalarySobConfig;
|
||||
import com.engine.salary.entity.salarysob.po.SalarySobPO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
|
@ -55,5 +54,4 @@ public interface SalarySobMapper {
|
|||
|
||||
List<SalarySobPO> listByName(SalarySobPO build);
|
||||
|
||||
List<SalarySobConfig> getConfig(Long taxAgentId);
|
||||
}
|
||||
|
|
@ -508,28 +508,6 @@
|
|||
and name = #{name}
|
||||
</select>
|
||||
|
||||
<resultMap id="configResultMap" type="com.engine.salary.entity.salarysob.config.SalarySobConfig">
|
||||
<result column="id" property="id"/>
|
||||
<result column="name" property="name"/>
|
||||
<result column="income_category" property="incomeCategory"/>
|
||||
<result column="salary_cycle_type" property="salaryCycleType"/>
|
||||
<result column="salary_cycle_from_day" property="salaryCycleFromDay"/>
|
||||
<result column="tax_cycle_type" property="taxCycleType"/>
|
||||
<result column="attend_cycle_type" property="attendCycleType"/>
|
||||
<result column="attend_cycle_from_day" property="attendCycleFromDay"/>
|
||||
<result column="social_security_cycle_type" property="socialSecurityCycleType"/>
|
||||
<result column="disable" property="disable"/>
|
||||
<result column="description" property="description"/>
|
||||
<result column="tax_agent_id" property="taxAgentId"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="getConfig" resultMap="configResultMap">
|
||||
select
|
||||
<include refid="baseColumns"/>
|
||||
from hrsa_salary_sob t
|
||||
where t.delete_type=0
|
||||
and tax_agent_id=#{taxAgentId}
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
|
|
@ -157,5 +157,7 @@ public interface SalaryArchiveItemService {
|
|||
* @date 2022/11/14 13:38
|
||||
*/
|
||||
String editSingleSalaryItem(SalaryArchiveItemSaveParam salaryArchiveItemSaveParam);
|
||||
List<ArchiveFieldConfig> getAllConfig();
|
||||
|
||||
|
||||
ArchiveFieldConfig getConfig();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.engine.salary.service;
|
||||
|
||||
import com.engine.salary.entity.salaryformula.ExpressFormula;
|
||||
import com.engine.salary.entity.salaryformula.config.FormluaConfig;
|
||||
import com.engine.salary.entity.salaryformula.param.SalaryFormulaMockParam;
|
||||
import com.engine.salary.entity.salaryformula.param.SalaryFormulaSaveParam;
|
||||
import com.engine.salary.entity.salaryformula.po.FormulaPO;
|
||||
|
|
@ -56,4 +57,6 @@ public interface SalaryFormulaService {
|
|||
List<FormulaPO> listByIds(List<Long> formulaIds);
|
||||
|
||||
void update(FormulaPO formulaPO);
|
||||
|
||||
FormluaConfig getFormluaConfig();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.engine.salary.service;
|
||||
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemAllConfig;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemConfig;
|
||||
import com.engine.salary.entity.salaryitem.param.*;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
|
|
@ -151,6 +152,8 @@ public interface SalaryItemService {
|
|||
*/
|
||||
void syncSalaryItemToSalarySobItem(SyncSalaryItemParam syncSalaryItemParam);
|
||||
|
||||
SalaryItemAllConfig getConfig();
|
||||
|
||||
List<SalaryItemConfig> getConfig(SalaryItemExportParam param);
|
||||
|
||||
List<SalaryItemConfig> getAllConfig(SalaryItemExportParam param);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
package com.engine.salary.service;
|
||||
|
||||
import com.engine.salary.entity.salaryarchive.config.ArchiveFieldConfig;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemAllConfig;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.entity.salarysob.dto.SalarySobItemAggregateDTO;
|
||||
import com.engine.salary.entity.salarysob.dto.SalarySobItemFormDTO;
|
||||
|
|
|
|||
|
|
@ -259,5 +259,7 @@ public interface TaxAgentService {
|
|||
* @return
|
||||
*/
|
||||
Collection<Long> listEmployeeIdsInTaxAgent(Long taxAgentId);
|
||||
|
||||
|
||||
List<TaxAgentConfig> getAllConfig();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ import com.engine.salary.entity.salaryarchive.dto.SalaryItemAdjustRecordListDTO;
|
|||
import com.engine.salary.entity.salaryarchive.param.*;
|
||||
import com.engine.salary.entity.salaryarchive.po.SalaryArchiveItemPO;
|
||||
import com.engine.salary.entity.salaryarchive.po.SalaryArchivePO;
|
||||
import com.engine.salary.entity.salaryitem.param.SalaryItemSearchParam;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.entity.taxagent.po.TaxAgentPO;
|
||||
import com.engine.salary.enums.UserStatusEnum;
|
||||
|
|
@ -22,10 +23,7 @@ import com.engine.salary.enums.salaryarchive.SalaryArchiveItemAdjustReasonEnum;
|
|||
import com.engine.salary.enums.salaryarchive.SalaryArchiveStatusEnum;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.mapper.archive.SalaryArchiveItemMapper;
|
||||
import com.engine.salary.service.SalaryArchiveItemService;
|
||||
import com.engine.salary.service.SalaryArchiveService;
|
||||
import com.engine.salary.service.SalaryEmployeeService;
|
||||
import com.engine.salary.service.TaxAgentService;
|
||||
import com.engine.salary.service.*;
|
||||
import com.engine.salary.util.SalaryEntityUtil;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.SalaryLoggerUtil;
|
||||
|
|
@ -76,6 +74,10 @@ public class SalaryArchiveItemServiceImpl extends Service implements SalaryArchi
|
|||
return ServiceUtil.getService(TaxAgentServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalaryItemService getSalaryItemService(User user) {
|
||||
return ServiceUtil.getService(SalaryItemServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalaryArchiveService getSalaryArchiveService(User user) {
|
||||
return ServiceUtil.getService(SalaryArchiveServiceImpl.class, user);
|
||||
}
|
||||
|
|
@ -275,10 +277,7 @@ public class SalaryArchiveItemServiceImpl extends Service implements SalaryArchi
|
|||
return StringUtils.EMPTY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ArchiveFieldConfig> getAllConfig() {
|
||||
return getSalaryArchiveItemMapper().getAllConfig(null);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return null
|
||||
|
|
@ -739,4 +738,10 @@ public class SalaryArchiveItemServiceImpl extends Service implements SalaryArchi
|
|||
}
|
||||
|
||||
|
||||
@Override
|
||||
public ArchiveFieldConfig getConfig() {
|
||||
List<SalaryItemPO> salaryItemPOList = getSalaryItemService(user).listByParam(SalaryItemSearchParam.builder().useInEmployeeSalary(1).build());
|
||||
return ArchiveFieldConfig.builder().salaryItems(salaryItemPOList).build();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import com.engine.common.util.ServiceUtil;
|
|||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
|
||||
import com.engine.salary.entity.salaryformula.ExpressFormula;
|
||||
import com.engine.salary.entity.salaryformula.config.FormluaConfig;
|
||||
import com.engine.salary.entity.salaryformula.param.SalaryFormulaMockParam;
|
||||
import com.engine.salary.entity.salaryformula.param.SalaryFormulaSaveParam;
|
||||
import com.engine.salary.entity.salaryformula.po.FormulaPO;
|
||||
|
|
@ -401,4 +402,10 @@ public class SalaryFormulaServiceImpl extends Service implements SalaryFormulaSe
|
|||
getFormulaMapper().updateIgnoreNull(formulaPO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public FormluaConfig getFormluaConfig() {
|
||||
List<FormulaPO> formulaPOS = getFormulaMapper().listAll();
|
||||
List<FormulaVar> formulaVars = getFormulaVarMapper().listAll();
|
||||
return FormluaConfig.builder().formulas(formulaPOS).formulaVars(formulaVars).build();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ import com.engine.salary.entity.salaryformula.param.SalaryFormulaSaveParam;
|
|||
import com.engine.salary.entity.salaryformula.po.FormulaPO;
|
||||
import com.engine.salary.entity.salaryformula.po.FormulaVar;
|
||||
import com.engine.salary.entity.salaryitem.bo.SalaryItemBO;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemAllConfig;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemConfig;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemExcelConfig;
|
||||
import com.engine.salary.entity.salaryitem.param.*;
|
||||
|
|
@ -494,6 +495,12 @@ public class SalaryItemServiceImpl extends Service implements SalaryItemService
|
|||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public SalaryItemAllConfig getConfig() {
|
||||
List<SalaryItemPO> salaryItemPOList = listByParam(SalaryItemSearchParam.builder().useInEmployeeSalary(0).build());
|
||||
return SalaryItemAllConfig.builder().salaryItems(salaryItemPOList).build();
|
||||
}
|
||||
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
|
|
@ -741,10 +748,9 @@ public class SalaryItemServiceImpl extends Service implements SalaryItemService
|
|||
ExcelUtil.parseHeader(SalaryItemExcelConfig.class, titles, dataIndexList);
|
||||
|
||||
|
||||
|
||||
List<List<Object>> rows = new ArrayList<>();
|
||||
rows.add(titles);
|
||||
if (param.isHasData()){
|
||||
if (param.isHasData()) {
|
||||
List<SalaryItemConfig> configs = getConfig(SalaryItemExportParam.builder().build());
|
||||
configs.forEach(e -> {
|
||||
List<Object> row = new ArrayList<>();
|
||||
|
|
|
|||
|
|
@ -10,7 +10,10 @@ import com.engine.salary.config.SalaryElogConfig;
|
|||
import com.engine.salary.constant.SalaryDefaultTenantConstant;
|
||||
import com.engine.hrmelog.entity.dto.LoggerContext;
|
||||
import com.engine.salary.entity.salaryacct.bo.SalaryAcctConfig;
|
||||
import com.engine.salary.entity.salaryarchive.config.ArchiveFieldConfig;
|
||||
import com.engine.salary.entity.salaryformula.ExpressFormula;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemAllConfig;
|
||||
import com.engine.salary.entity.salaryitem.param.SalaryItemSearchParam;
|
||||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.entity.salarysob.bo.SalarySobItemAggregateBO;
|
||||
import com.engine.salary.entity.salarysob.dto.SalarySobItemAggregateDTO;
|
||||
|
|
@ -585,4 +588,5 @@ public class SalarySobItemServiceImpl extends Service implements SalarySobItemSe
|
|||
return salarySobItemFormDTO;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -80,6 +80,23 @@ public class SalarySobServiceImpl extends Service implements SalarySobService {
|
|||
// return MapperProxyFactory.getProxy(SalarySobBackItemMapper.class);
|
||||
// }
|
||||
|
||||
private SalarySobItemService getSalarySobItemService(User user) {
|
||||
return ServiceUtil.getService(SalarySobItemServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalarySobItemGroupService getSalarySobItemGroupService(User user) {
|
||||
return ServiceUtil.getService(SalarySobItemGroupServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalarySobEmpFieldService getSalarySobEmpFieldService(User user) {
|
||||
return ServiceUtil.getService(SalarySobEmpFieldServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalarySobAdjustRuleService getSalarySobAdjustRuleService(User user) {
|
||||
return ServiceUtil.getService(SalarySobAdjustRuleServiceImpl.class, user);
|
||||
}
|
||||
|
||||
|
||||
private SalarySobMapper getSalarySobMapper() {
|
||||
return MapperProxyFactory.getProxy(SalarySobMapper.class);
|
||||
}
|
||||
|
|
@ -284,15 +301,15 @@ public class SalarySobServiceImpl extends Service implements SalarySobService {
|
|||
// 保存薪资账套
|
||||
salarySobMapper.insert(salarySobPO);
|
||||
// 记录日志
|
||||
LoggerContext<SalarySobPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(salarySobPO.getId()));
|
||||
loggerContext.setTargetName(salarySobPO.getName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "新建薪资账套"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "新建薪资账套") + ": " + salarySobPO.getName());
|
||||
loggerContext.setNewValues(salarySobPO);
|
||||
SalaryElogConfig.salarySobLoggerTemplate.write(loggerContext);
|
||||
LoggerContext<SalarySobPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId(String.valueOf(salarySobPO.getId()));
|
||||
loggerContext.setTargetName(salarySobPO.getName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.ADD.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "新建薪资账套"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "新建薪资账套") + ": " + salarySobPO.getName());
|
||||
loggerContext.setNewValues(salarySobPO);
|
||||
SalaryElogConfig.salarySobLoggerTemplate.write(loggerContext);
|
||||
// 新建薪资账套时,保存默认的员工信息字段
|
||||
saveDefaultEmpField(salarySobPO);
|
||||
// 新建薪资账套时,保存默认的薪资项目
|
||||
|
|
@ -556,18 +573,18 @@ public class SalarySobServiceImpl extends Service implements SalarySobService {
|
|||
salarySobPO.setUpdateTime(new Date());
|
||||
salarySobMapper.updateById(salarySobPO);
|
||||
// 记录日志
|
||||
String operateTypeName = Objects.equals(disableParam.getDisable(), NumberUtils.INTEGER_ONE) ?
|
||||
SalaryI18nUtil.getI18nLabel(0, "禁用薪资账套") : SalaryI18nUtil.getI18nLabel(0, "启用薪资账套");
|
||||
LoggerContext<SalarySobPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId("" + salarySobPO.getId());
|
||||
loggerContext.setTargetName(salarySobPO.getName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(operateTypeName);
|
||||
loggerContext.setOperatedesc(operateTypeName + ": " + salarySobPO.getName());
|
||||
loggerContext.setOldValues(oldSalarySobPO);
|
||||
loggerContext.setNewValues(salarySobPO);
|
||||
SalaryElogConfig.salarySobLoggerTemplate.write(loggerContext);
|
||||
String operateTypeName = Objects.equals(disableParam.getDisable(), NumberUtils.INTEGER_ONE) ?
|
||||
SalaryI18nUtil.getI18nLabel(0, "禁用薪资账套") : SalaryI18nUtil.getI18nLabel(0, "启用薪资账套");
|
||||
LoggerContext<SalarySobPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId("" + salarySobPO.getId());
|
||||
loggerContext.setTargetName(salarySobPO.getName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(operateTypeName);
|
||||
loggerContext.setOperatedesc(operateTypeName + ": " + salarySobPO.getName());
|
||||
loggerContext.setOldValues(oldSalarySobPO);
|
||||
loggerContext.setNewValues(salarySobPO);
|
||||
SalaryElogConfig.salarySobLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -622,18 +639,18 @@ public class SalarySobServiceImpl extends Service implements SalarySobService {
|
|||
getSalarySobBackItemService(user).deleteBySalarySobIds(ids);
|
||||
// 删除薪资账套的校验规则
|
||||
getSalarySobCheckRuleService(user).deleteBySalarySobIds(ids);
|
||||
// 记录日志
|
||||
salarySobPOS.forEach(salarySobPO -> {
|
||||
LoggerContext<SalarySobPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId("" + salarySobPO.getId());
|
||||
loggerContext.setTargetName(salarySobPO.getName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "删除薪资账套"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "删除薪资账套"));
|
||||
loggerContext.setOldValues(salarySobPO);
|
||||
SalaryElogConfig.salarySobLoggerTemplate.write(loggerContext);
|
||||
});
|
||||
// 记录日志
|
||||
salarySobPOS.forEach(salarySobPO -> {
|
||||
LoggerContext<SalarySobPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId("" + salarySobPO.getId());
|
||||
loggerContext.setTargetName(salarySobPO.getName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.DELETE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(0, "删除薪资账套"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(0, "删除薪资账套"));
|
||||
loggerContext.setOldValues(salarySobPO);
|
||||
SalaryElogConfig.salarySobLoggerTemplate.write(loggerContext);
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -728,15 +745,15 @@ public class SalarySobServiceImpl extends Service implements SalarySobService {
|
|||
if (CollectionUtils.isNotEmpty(result.getSalarySobCheckRules())) {
|
||||
getSalarySobCheckRuleService(user).batchSave(result.getSalarySobCheckRules());
|
||||
}
|
||||
// 记录日志
|
||||
LoggerContext<SalarySobPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId("" + result.getSalarySob().getId());
|
||||
loggerContext.setTargetName(result.getSalarySob().getName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98570, "复制薪资账套"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98570, "复制薪资账套") + ": " + salarySobPO.getName());
|
||||
SalaryElogConfig.salarySobLoggerTemplate.write(loggerContext);
|
||||
// 记录日志
|
||||
LoggerContext<SalarySobPO> loggerContext = new LoggerContext<>();
|
||||
loggerContext.setUser(user);
|
||||
loggerContext.setTargetId("" + result.getSalarySob().getId());
|
||||
loggerContext.setTargetName(result.getSalarySob().getName());
|
||||
loggerContext.setOperateType(OperateTypeEnum.UPDATE.getValue());
|
||||
loggerContext.setOperateTypeName(SalaryI18nUtil.getI18nLabel(98570, "复制薪资账套"));
|
||||
loggerContext.setOperatedesc(SalaryI18nUtil.getI18nLabel(98570, "复制薪资账套") + ": " + salarySobPO.getName());
|
||||
SalaryElogConfig.salarySobLoggerTemplate.write(loggerContext);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -787,7 +804,23 @@ public class SalarySobServiceImpl extends Service implements SalarySobService {
|
|||
|
||||
@Override
|
||||
public List<SalarySobConfig> getConfig(Long taxAgentId) {
|
||||
return getSalarySobMapper().getConfig(taxAgentId);
|
||||
List<SalarySobPO> salarySobPOS = getSalarySobMapper().listSome(SalarySobPO.builder().taxAgentId(taxAgentId).build());
|
||||
return salarySobPOS.stream().map(salarySobPO -> {
|
||||
Long salarySobId = salarySobPO.getId();
|
||||
List<SalarySobEmpFieldPO> salarySobEmpFieldPOS = getSalarySobEmpFieldService(user).listBySalarySobId(salarySobId);
|
||||
List<SalarySobItemGroupPO> salarySobItemGroupPOS = getSalarySobItemGroupService(user).listBySalarySobId(salarySobId);
|
||||
List<SalarySobItemPO> salarySobItemPOS = getSalarySobItemService(user).listBySalarySobId(salarySobId);
|
||||
List<SalarySobBackItemPO> salarySobBackItemPOS = getSalarySobBackItemService(user).listBySalarySobId(salarySobId);
|
||||
List<SalarySobAdjustRulePO> salarySobAdjustRulePOS = getSalarySobAdjustRuleService(user).listBySalarySobId(salarySobId);
|
||||
return SalarySobConfig.builder()
|
||||
.salarySob(salarySobPO)
|
||||
.salarySobEmpFields(salarySobEmpFieldPOS)
|
||||
.salarySobItemGroups(salarySobItemGroupPOS)
|
||||
.salarySobItems(salarySobItemPOS)
|
||||
.salarySobBackItems(salarySobBackItemPOS)
|
||||
.salarySobAdjustRules(salarySobAdjustRulePOS)
|
||||
.build();
|
||||
}).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,25 @@
|
|||
package com.engine.salary.sys.entity.param;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
/**
|
||||
* 初始化薪酬配置
|
||||
* <p>Copyright: Copyright (c) 2024</p>
|
||||
* <p>Company: 泛微软件</p>
|
||||
*
|
||||
* @author qiantao
|
||||
* @version 1.0
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class uploadConfigParam {
|
||||
|
||||
//上传文件id
|
||||
String imageId;
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,68 @@
|
|||
package com.engine.salary.util.xml;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.thoughtworks.xstream.XStream;
|
||||
import com.thoughtworks.xstream.io.HierarchicalStreamDriver;
|
||||
import com.thoughtworks.xstream.io.naming.NoNameCoder;
|
||||
import com.thoughtworks.xstream.io.xml.DomDriver;
|
||||
import com.thoughtworks.xstream.security.AnyTypePermission;
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public class XStreamUtil {
|
||||
//new NoNameCoder() 解决 _ 被序列化成 __ 的问题
|
||||
private static final NoNameCoder noNameCoder = new NoNameCoder();
|
||||
|
||||
private static XStream xStream = new XStream(new DomDriver("UTF-8", noNameCoder));
|
||||
|
||||
private static XStream getxStream(HierarchicalStreamDriver driver){
|
||||
if(Objects.isNull(driver)){
|
||||
return xStream;
|
||||
}
|
||||
return new XStream(driver);
|
||||
}
|
||||
|
||||
public static <T> T unmarshal(String pkgName, Class<T> cla, String xmlStr, HierarchicalStreamDriver driver) {
|
||||
xStream = getxStream(driver);
|
||||
|
||||
if (StrUtil.isEmpty(pkgName)) {
|
||||
//高版本为了解决安全漏洞,增加了白名单机制, 如果不设置这个权限可能会报错
|
||||
xStream.addPermission(AnyTypePermission.ANY);
|
||||
} else {
|
||||
//设置允许解析的包,如果不想设置可以用 addPermission(AnyTypePermission.ANY) 代替
|
||||
xStream.allowTypesByWildcard(new String[]{pkgName});
|
||||
}
|
||||
|
||||
//支持注解,不然使用的XStream注解不会生效且不报错
|
||||
xStream.autodetectAnnotations(true);
|
||||
xStream.processAnnotations(cla);
|
||||
|
||||
//忽略未知属性, 如果不添加这个,当Xml报文中出现实体中没有的属性时会报错 No such field
|
||||
xStream.ignoreUnknownElements();
|
||||
|
||||
return (T) xStream.fromXML(xmlStr);
|
||||
}
|
||||
|
||||
public static <T> T unmarshal(String pkgName, Class<T> cla, String xmlStr) {
|
||||
return unmarshal(pkgName, cla, xmlStr, null);
|
||||
}
|
||||
|
||||
public static <T> T unmarshal(Class<T> cla, String xmlStr) {
|
||||
return unmarshal(null, cla, xmlStr, null);
|
||||
}
|
||||
|
||||
public static String marshal(Object o, DomDriver driver) {
|
||||
xStream = getxStream(driver);
|
||||
|
||||
//支持注解,不然使用的 @XStreamAlias() 注解不会生效而且不会报错
|
||||
xStream.autodetectAnnotations(true);
|
||||
|
||||
//注册自定义时间转换器,使得XStream全局支持LocalDateTime, 或者不在这里注册,使用@XStreamConverter(LocalDateTimeConverter.class)注解在单一字段上
|
||||
// xStream.registerConverter(new LocalDateTimeConverter());
|
||||
return xStream.toXML(o);
|
||||
}
|
||||
|
||||
public static String marshal(Object o){
|
||||
return marshal(o, null);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,16 +1,15 @@
|
|||
package com.engine.salary.web;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.salary.sys.entity.param.AppSettingSaveParam;
|
||||
import com.engine.salary.sys.entity.param.MatchEmployeeModeSaveParam;
|
||||
import com.engine.salary.sys.entity.param.OrderRuleParam;
|
||||
import com.engine.salary.sys.entity.param.SalarySysConfQueryParam;
|
||||
import com.engine.salary.entity.config.SalaryConfig;
|
||||
import com.engine.salary.sys.entity.param.*;
|
||||
import com.engine.salary.sys.entity.po.SalarySysConfPO;
|
||||
import com.engine.salary.sys.entity.vo.AppSettingVO;
|
||||
import com.engine.salary.sys.entity.vo.OrderRuleVO;
|
||||
import com.engine.salary.sys.enums.TaxDeclarationFunctionEnum;
|
||||
import com.engine.salary.util.ResponseResult;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.engine.salary.util.xml.XStreamUtil;
|
||||
import com.engine.salary.wrapper.SalarySystemConfigWrapper;
|
||||
import io.swagger.v3.oas.annotations.parameters.RequestBody;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
@ -23,6 +22,14 @@ import javax.ws.rs.*;
|
|||
import javax.ws.rs.core.Context;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import javax.ws.rs.core.Response;
|
||||
import javax.ws.rs.core.StreamingOutput;
|
||||
import java.io.BufferedWriter;
|
||||
import java.io.OutputStreamWriter;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.io.Writer;
|
||||
import java.net.URLEncoder;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.time.LocalDate;
|
||||
import java.util.Map;
|
||||
|
||||
@Slf4j
|
||||
|
|
@ -330,33 +337,42 @@ public class SalarySystemConfigController {
|
|||
public Response downloadConfig(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
try {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
XSSFWorkbook workbook = getSalarySystemConfigWrapper(user).downloadConfig(queryParam);
|
||||
String fileName = "累计专项附加扣除导入模板" + LocalDate.now();
|
||||
SalaryConfig salaryConfig = getSalarySystemConfigWrapper(user).downloadConfig();
|
||||
|
||||
// XStream xStream = new XStream();
|
||||
// //由于使用的注解,将自动检测注解开启
|
||||
// xStream.autodetectAnnotations(true);
|
||||
// String xml = xStream.toXML(salaryConfig);
|
||||
String xml = XStreamUtil.marshal(salaryConfig);
|
||||
|
||||
String fileName = "薪酬配置" + LocalDate.now();
|
||||
try {
|
||||
fileName = URLEncoder.encode(fileName + ".xlsx", "UTF-8");
|
||||
fileName = URLEncoder.encode(fileName + ".xml", "UTF-8");
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
StreamingOutput output = outputStream -> {
|
||||
workbook.write(outputStream);
|
||||
outputStream.flush();
|
||||
Writer writer = new BufferedWriter(new OutputStreamWriter(outputStream, StandardCharsets.UTF_8));
|
||||
writer.write(xml);
|
||||
writer.flush();
|
||||
};
|
||||
|
||||
|
||||
response.setContentType("application/octet-stream");
|
||||
return Response.ok(output).header("Content-disposition", "attachment;filename=" + fileName).header("Cache-Control", "no-cache").build();
|
||||
} catch (Exception e) {
|
||||
log.error("累计专项附加扣除导入模板异常", e);
|
||||
throw e;
|
||||
log.error("下载薪酬配置", e);
|
||||
throw new RuntimeException("下载薪酬配置", e);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@POST
|
||||
@Path("/downloadConfig1")
|
||||
@Path("/uploadConfig")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String downloadConfig1(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
public String initConfig(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody uploadConfigParam param) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<String, Object>(user).run(getSalarySystemConfigWrapper(user)::downloadConfig);
|
||||
return new ResponseResult<uploadConfigParam, Object>(user).run(getSalarySystemConfigWrapper(user)::uploadConfig, param);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -4,19 +4,18 @@ import com.engine.common.util.ServiceUtil;
|
|||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.entity.config.SalaryConfig;
|
||||
import com.engine.salary.entity.salaryarchive.config.ArchiveFieldConfig;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemConfig;
|
||||
import com.engine.salary.entity.salaryitem.param.SalaryItemExportParam;
|
||||
import com.engine.salary.entity.salaryformula.config.FormluaConfig;
|
||||
import com.engine.salary.entity.salaryitem.config.SalaryItemAllConfig;
|
||||
import com.engine.salary.entity.taxagent.config.TaxAgentConfig;
|
||||
import com.engine.salary.service.SalaryArchiveItemService;
|
||||
import com.engine.salary.service.SalaryFormulaService;
|
||||
import com.engine.salary.service.SalaryItemService;
|
||||
import com.engine.salary.service.TaxAgentService;
|
||||
import com.engine.salary.service.impl.SalaryArchiveItemServiceImpl;
|
||||
import com.engine.salary.service.impl.SalaryFormulaServiceImpl;
|
||||
import com.engine.salary.service.impl.SalaryItemServiceImpl;
|
||||
import com.engine.salary.service.impl.TaxAgentServiceImpl;
|
||||
import com.engine.salary.sys.entity.param.AppSettingSaveParam;
|
||||
import com.engine.salary.sys.entity.param.MatchEmployeeModeSaveParam;
|
||||
import com.engine.salary.sys.entity.param.OrderRuleParam;
|
||||
import com.engine.salary.sys.entity.param.SalarySysConfQueryParam;
|
||||
import com.engine.salary.sys.entity.param.*;
|
||||
import com.engine.salary.sys.entity.po.SalarySysConfPO;
|
||||
import com.engine.salary.sys.entity.vo.AppSettingVO;
|
||||
import com.engine.salary.sys.entity.vo.OrderRuleVO;
|
||||
|
|
@ -28,13 +27,16 @@ import com.engine.salary.util.page.PageInfo;
|
|||
import com.engine.salary.util.page.SalaryPageUtil;
|
||||
import com.engine.salary.util.valid.RuntimeTypeEnum;
|
||||
import com.engine.salary.util.valid.ValidUtil;
|
||||
import com.thoughtworks.xstream.XStream;
|
||||
import com.thoughtworks.xstream.io.xml.CompactWriter;
|
||||
import com.engine.salary.util.xml.XStreamUtil;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.util.IOUtils;
|
||||
import weaver.file.ImageFileManager;
|
||||
import weaver.general.BaseBean;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import java.io.*;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
|
@ -65,6 +67,10 @@ public class SalarySystemConfigWrapper extends Service {
|
|||
return ServiceUtil.getService(TaxAgentServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private SalaryFormulaService getSalaryFormulaService(User user) {
|
||||
return ServiceUtil.getService(SalaryFormulaServiceImpl.class, user);
|
||||
}
|
||||
|
||||
public Map<String, Object> info() {
|
||||
BaseBean baseBean = new BaseBean();
|
||||
String log = baseBean.getPropValue("hrmSalary", "log");
|
||||
|
|
@ -194,28 +200,176 @@ public class SalarySystemConfigWrapper extends Service {
|
|||
getSalarySysConfService(user).saveSalarySendFeedback(param);
|
||||
}
|
||||
|
||||
public Object downloadConfig() {
|
||||
XStream xStream = new XStream();
|
||||
//由于使用的注解,将自动检测注解开启
|
||||
xStream.autodetectAnnotations(true);
|
||||
public SalaryConfig downloadConfig() {
|
||||
|
||||
SalaryConfig salaryConfig = new SalaryConfig();
|
||||
List<SalaryItemConfig> salaryItemConfigs = getSalaryItemService(user).getAllConfig(SalaryItemExportParam.builder().build());
|
||||
salaryConfig.setSalaryItemConfigs(salaryItemConfigs);
|
||||
|
||||
List<ArchiveFieldConfig> archiveFieldConfigs = getSalaryArchiveItemService(user).getAllConfig();
|
||||
salaryConfig.setArchiveFieldConfig(archiveFieldConfigs);
|
||||
|
||||
FormluaConfig formluaConfig = getSalaryFormulaService(user).getFormluaConfig();
|
||||
salaryConfig.setFormluaConfig(formluaConfig);
|
||||
|
||||
SalaryItemAllConfig salaryItemConfig = getSalaryItemService(user).getConfig();
|
||||
salaryConfig.setSalaryItemConfig(salaryItemConfig);
|
||||
|
||||
ArchiveFieldConfig archiveFieldConfig = getSalaryArchiveItemService(user).getConfig();
|
||||
salaryConfig.setArchiveFieldConfigs(archiveFieldConfig);
|
||||
|
||||
List<TaxAgentConfig> taxAgentConfigs = getTaxAgentService(user).getAllConfig();
|
||||
salaryConfig.setTaxAgentConfigs(taxAgentConfigs);
|
||||
|
||||
String xml = xStream.toXML(salaryConfig);
|
||||
System.out.println(xml);
|
||||
Writer writer = new StringWriter();
|
||||
xStream.marshal(xml, new CompactWriter(writer));
|
||||
OutputStream output = new ByteArrayOutputStream();
|
||||
xStream.marshal(xml, new CompactWriter(new OutputStreamWriter(output)));
|
||||
return s;
|
||||
return salaryConfig;
|
||||
}
|
||||
|
||||
public void uploadConfig(uploadConfigParam param) {
|
||||
Date now = new Date();
|
||||
InputStream fileInputStream = null;
|
||||
try {
|
||||
fileInputStream = ImageFileManager.getInputStreamById(Integer.parseInt(param.getImageId()));
|
||||
Reader reader = new InputStreamReader(fileInputStream, StandardCharsets.UTF_8);
|
||||
BufferedReader bufferedReader = new BufferedReader(reader);
|
||||
String line;
|
||||
StringBuilder xml = new StringBuilder();
|
||||
while ((line = bufferedReader.readLine()) != null) {
|
||||
xml.append(line);
|
||||
}
|
||||
|
||||
SalaryConfig config = XStreamUtil.unmarshal(SalaryConfig.class, xml.toString());
|
||||
System.out.println(config);
|
||||
|
||||
// List<SalaryItemExcelConfig> configs = ExcelParseHelper.parse2Map(fileInputStream, SalaryItemExcelConfig.class, 0, 1, 13, EXCEL_TYPE_XLSX);
|
||||
//
|
||||
// // 错误excel内容
|
||||
// ImportExcelResponse response = ImportExcelResponse.builder().totalCount(configs.size()).successCount(configs.size()).errorCount(0).errorData(new ArrayList<>()).build();
|
||||
//
|
||||
// List<SysSalaryItemPO> sysSalaryItemPOS = sysSalaryItemBiz.listAll();
|
||||
// Set<String> sysItems = SalaryEntityUtil.properties(sysSalaryItemPOS, SysSalaryItemPO::getName);
|
||||
//
|
||||
// List<SalaryItemPO> adds = new ArrayList<>();
|
||||
// List<SalaryItemPO> updates = new ArrayList<>();
|
||||
// Map<Long, Map<String, String>> formulaItems = new HashMap<>();
|
||||
// for (int i = 0; i < configs.size(); i++) {
|
||||
// String rowIndex = String.format("第%s行", i + 2);
|
||||
// SalaryItemExcelConfig config = configs.get(i);
|
||||
// String name = config.getName();
|
||||
// SalaryValueTypeEnum salaryValueTypeEnum = SalaryValueTypeEnum.parseByDefaultLabel(config.getValueType());
|
||||
// SalaryDataTypeEnum salaryDataTypeEnum = SalaryDataTypeEnum.parseByValue(config.getDataType());
|
||||
// SalaryItemPO itemPO = getByName(name);
|
||||
// if (itemPO == null) {
|
||||
//
|
||||
// if (sysItems.contains(name)) {
|
||||
// ImportExcelResponse.Error error = ImportExcelResponse.Error.builder().message(String.format("%s“%s”的名称与系统名称冲突", rowIndex, name)).build();
|
||||
// response.setSuccessCount(response.getSuccessCount() - 1);
|
||||
// response.setErrorCount(response.getErrorCount() + 1);
|
||||
// response.getErrorData().add(error);
|
||||
// continue;
|
||||
// }
|
||||
//
|
||||
// itemPO = SalaryItemPO.builder()
|
||||
// .id(IdGenerator.generate())
|
||||
// .code(IdGenerator.getUUID())
|
||||
// .name(name)
|
||||
// .systemType(SalarySystemTypeEnum.CUSTOM.getValue())
|
||||
// .sysSalaryItemId(org.apache.commons.lang3.math.NumberUtils.LONG_ZERO)
|
||||
// .useDefault(SalaryOnOffEnum.parseByDefaultLabel(config.getUseDefault()).getValue())
|
||||
// .useInEmployeeSalary(SalaryOnOffEnum.OFF.getValue())
|
||||
// .hideDefault(SalaryOnOffEnum.parseByDefaultLabel(config.getHideDefault()).getValue())
|
||||
// .roundingMode(SalaryRoundingModeEnum.parseByDefaultLabel(config.getRoundingMode()).getValue())
|
||||
// .pattern(NumberUtil.isNumber(config.getPattern()) ? Integer.parseInt(config.getPattern()) : 2)
|
||||
// .valueType(salaryValueTypeEnum.getValue())
|
||||
// .dataType(salaryDataTypeEnum.getValue())
|
||||
// //后补
|
||||
// .formulaId(0L)
|
||||
// .description(config.getDescription())
|
||||
// .canEdit(org.apache.commons.lang3.math.NumberUtils.INTEGER_ONE)
|
||||
// .creator((long) user.getUID())
|
||||
// .deleteType(0)
|
||||
// .createTime(now)
|
||||
// .updateTime(now)
|
||||
// .tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
|
||||
// .sharedType(0)
|
||||
// .taxAgentIds("")
|
||||
// .sortedIndex(NumberUtil.isNumber(config.getSortedIndex()) ? Integer.parseInt(config.getSortedIndex()) : null)
|
||||
// .width(NumberUtil.isNumber(config.getWidth()) ? Integer.parseInt(config.getWidth()) : null)
|
||||
// .defaultValue(config.getDefaultValue())
|
||||
// .build();
|
||||
// adds.add(itemPO);
|
||||
// } else {
|
||||
//
|
||||
// if (SalarySystemTypeEnum.parseByValue(itemPO.getSystemType()) == SalarySystemTypeEnum.SYSTEM) {
|
||||
// ImportExcelResponse.Error error = ImportExcelResponse.Error.builder().message(String.format("%s“%s”是系统薪资项目不支持修改", rowIndex, name)).build();
|
||||
// response.setSuccessCount(response.getSuccessCount() - 1);
|
||||
// response.setErrorCount(response.getErrorCount() + 1);
|
||||
// response.getErrorData().add(error);
|
||||
// continue;
|
||||
// }
|
||||
//
|
||||
// itemPO.setUseDefault(SalaryOnOffEnum.parseByDefaultLabel(config.getUseDefault()).getValue());
|
||||
// itemPO.setHideDefault(SalaryOnOffEnum.parseByDefaultLabel(config.getHideDefault()).getValue());
|
||||
// itemPO.setRoundingMode(SalaryRoundingModeEnum.parseByDefaultLabel(config.getRoundingMode()).getValue());
|
||||
// itemPO.setPattern(NumberUtil.isNumber(config.getPattern()) ? Integer.parseInt(config.getPattern()) : 2);
|
||||
// itemPO.setValueType(salaryValueTypeEnum.getValue());
|
||||
// itemPO.setDataType(salaryDataTypeEnum.getValue());
|
||||
// //后补
|
||||
// itemPO.setFormulaId(0L);
|
||||
// itemPO.setDescription(config.getDescription());
|
||||
// itemPO.setUpdateTime(now);
|
||||
// itemPO.setSortedIndex(NumberUtil.isNumber(config.getSortedIndex()) ? Integer.parseInt(config.getSortedIndex()) : null);
|
||||
// itemPO.setWidth(NumberUtil.isNumber(config.getWidth()) ? Integer.parseInt(config.getWidth()) : null);
|
||||
// itemPO.setDefaultValue(config.getDefaultValue());
|
||||
// updates.add(itemPO);
|
||||
// }
|
||||
//
|
||||
// //解析公式
|
||||
// if (salaryValueTypeEnum == SalaryValueTypeEnum.FORMULA || salaryValueTypeEnum == SalaryValueTypeEnum.SQL) {
|
||||
// Long id = itemPO.getId();
|
||||
// String formula = config.getFormula();
|
||||
// String sqlReturnKey = config.getSqlReturnKey();
|
||||
// Map<String, String> map = new HashMap<>();
|
||||
// map.put("rowIndex", rowIndex);
|
||||
// map.put("formula", formula);
|
||||
// map.put("sqlReturnKey", sqlReturnKey);
|
||||
// formulaItems.put(id, map);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// adds.forEach(getSalaryItemMapper()::insertIgnoreNull);
|
||||
// updates.forEach(getSalaryItemMapper()::updateIgnoreNull);
|
||||
//
|
||||
// for (Long id : formulaItems.keySet()) {
|
||||
// SalaryItemPO itemPO = getById(id);
|
||||
// Map<String, String> map = formulaItems.get(id);
|
||||
// String rowIndex = map.get("rowIndex");
|
||||
// String formula = map.get("formula");
|
||||
// String sqlReturnKey = map.get("sqlReturnKey");
|
||||
// SalaryValueTypeEnum salaryValueTypeEnum = SalaryValueTypeEnum.parseByValue(itemPO.getValueType());
|
||||
// SalaryDataTypeEnum salaryDataTypeEnum = SalaryDataTypeEnum.parseByValue(itemPO.getDataType());
|
||||
// SalaryFormulaSaveParam saveParam = SalaryFormulaSaveParam.builder()
|
||||
// .name(itemPO.getName())
|
||||
// .module("salary")
|
||||
// .useFor("salaryitem")
|
||||
// .referenceType(salaryValueTypeEnum == SalaryValueTypeEnum.FORMULA ? ReferenceTypeEnum.FORMULA.getValue() : ReferenceTypeEnum.SQL.getValue())
|
||||
// .returnType(salaryDataTypeEnum == SalaryDataTypeEnum.STRING ? ReturnTypeEnum.STRING.getValue() : ReturnTypeEnum.NUMBER.getValue())
|
||||
// .validateType(salaryDataTypeEnum == SalaryDataTypeEnum.STRING ? ReturnTypeEnum.STRING.getValue() : ReturnTypeEnum.NUMBER.getValue())
|
||||
// .extendParam("{\"isCustomFunction\":\"0\",\"sqlReturnKey\":\"" + sqlReturnKey + "\",\"openDecrypt\":\"0\",\"datasource\":{\"datasourceId\":\"\"}}")
|
||||
// .formula(formula)
|
||||
// .build();
|
||||
//
|
||||
// try {
|
||||
// FormulaPO formulaPO = getSalaryFormulaService(user).save(saveParam);
|
||||
// itemPO.setFormulaId(formulaPO.getId());
|
||||
// getSalaryItemMapper().updateIgnoreNull(itemPO);
|
||||
// } catch (Exception e) {
|
||||
// ImportExcelResponse.Error error = ImportExcelResponse.Error.builder().message(String.format("%s“%s”的公式设置有误:%s", rowIndex, itemPO.getName(), e.getMessage())).build();
|
||||
// response.setSuccessCount(response.getSuccessCount() - 1);
|
||||
// response.setErrorCount(response.getErrorCount() + 1);
|
||||
// response.getErrorData().add(error);
|
||||
// }
|
||||
// }
|
||||
// return response;
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
IOUtils.closeQuietly(fileInputStream);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue