From bbb8417008a1dce05a469be12e0003a4b17a5156 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Tue, 18 Jul 2023 16:28:29 +0800 Subject: [PATCH 01/13] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=B7=A5?= =?UTF-8?q?=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=B1=95=E7=A4=BA=E5=90=8Dtemp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salaryBill/po/SalaryBillItemNamePO.java | 40 ++++++ .../salarybill/SalaryBillItemNameMapper.java | 68 +++++++++ .../salarybill/SalaryBillItemNameMapper.xml | 135 ++++++++++++++++++ .../service/SalaryBillItemNameService.java | 62 ++++++++ .../impl/SalaryBillItemNameServiceImpl.java | 51 +++++++ 5 files changed, 356 insertions(+) create mode 100644 src/com/engine/salary/entity/salaryBill/po/SalaryBillItemNamePO.java create mode 100644 src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java create mode 100644 src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml create mode 100644 src/com/engine/salary/service/SalaryBillItemNameService.java create mode 100644 src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java diff --git a/src/com/engine/salary/entity/salaryBill/po/SalaryBillItemNamePO.java b/src/com/engine/salary/entity/salaryBill/po/SalaryBillItemNamePO.java new file mode 100644 index 000000000..e5170d6d0 --- /dev/null +++ b/src/com/engine/salary/entity/salaryBill/po/SalaryBillItemNamePO.java @@ -0,0 +1,40 @@ +package com.engine.salary.entity.salaryBill.po; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Collection; + +/** + * @author Harryxzy + * @ClassName SalaryBillItemName + * @date 2023/07/18 15:55 + * @description 工资单薪资项目展示名称 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SalaryBillItemNamePO { + private Long id; + + /** + * 薪资项目id + */ + private Long salaryItemId; + + /** + * 薪资项目展示名称 + */ + private String salaryItemShowName; + + /** + * 工资单模板id + */ + private Long salaryTemplateId; + + //主键id集合 + private Collection ids; +} diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java new file mode 100644 index 000000000..f589a0ae6 --- /dev/null +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java @@ -0,0 +1,68 @@ +package com.engine.salary.mapper.salarybill; + +import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; + +import java.util.List; + +/** + * @author Harryxzy + * @ClassName SalaryBillItemNameMapper + * @date 2023/07/18 15:58 + * @description 工资单薪资项目展示名 + */ +public interface SalaryBillItemNameMapper { + /** + * 查询所有记录 + * + * @return 返回集合,没有返回空List + */ + List listAll(); + + /** + * 条件查询 + * + * @return 返回集合,没有返回空List + */ + List listSome(SalaryBillItemNamePO salaryBillItemNamePO); + + + /** + * 根据主键查询 + * + * @param id 主键 + * @return 返回记录,没有返回null + */ + SalaryBillItemNamePO getById(Long id); + + /** + * 新增,忽略null字段 + * + * @param salaryBillItemNamePO 新增的记录 + * @return 返回影响行数 + */ + int insertIgnoreNull(SalaryBillItemNamePO salaryBillItemNamePO); + + /** + * 修改,修改所有字段 + * + * @param salaryBillItemNamePO 修改的记录 + * @return 返回影响行数 + */ + int update(SalaryBillItemNamePO salaryBillItemNamePO); + + /** + * 修改,忽略null字段 + * + * @param salaryBillItemNamePO 修改的记录 + * @return 返回影响行数 + */ + int updateIgnoreNull(SalaryBillItemNamePO salaryBillItemNamePO); + + /** + * 删除记录 + * + * @param id 待删除的记录id + * @return 返回影响行数 + */ + int delete(Long id); +} diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml new file mode 100644 index 000000000..3e6f61f46 --- /dev/null +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml @@ -0,0 +1,135 @@ + + + + + + + + + + + + + t.id + , t.salary_item_id + , t.salary_item_show_name + , t.salary_template_id + + + + + + + + + + + + + + + INSERT INTO hrsa_salary_bill_item_name + + + + id, + + + salary_item_id, + + + salary_item_show_name, + + + salary_template_id, + + + + + #{id}, + + + #{salaryItemId}, + + + #{salaryItemShowName}, + + + #{salaryTemplateId}, + + + + + + + UPDATE hrsa_salary_bill_item_name + + salary_item_id=#{salaryItemId}, + salary_item_show_name=#{salaryItemShowName}, + salary_template_id=#{salaryTemplateId}, + + WHERE id = #{id} AND delete_type = 0 + + + + + + UPDATE hrsa_salary_bill_item_name + + + salary_item_id=#{salaryItemId}, + + + salary_item_show_name=#{salaryItemShowName}, + + + salary_template_id=#{salaryTemplateId}, + + + WHERE id = #{id} AND delete_type = 0 + + + + + + UPDATE hrsa_salary_bill_item_name + SET delete_type=1 + WHERE id = #{id} AND delete_type = 0 + + + + \ No newline at end of file diff --git a/src/com/engine/salary/service/SalaryBillItemNameService.java b/src/com/engine/salary/service/SalaryBillItemNameService.java new file mode 100644 index 000000000..258740091 --- /dev/null +++ b/src/com/engine/salary/service/SalaryBillItemNameService.java @@ -0,0 +1,62 @@ +package com.engine.salary.service; + +import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; + +import java.util.List; + +/** + * @author Harryxzy + * @ClassName SalaryBillItemNameService + * @date 2023/07/18 16:15 + * @description 工资单薪资项目展示名称 + */ +public interface SalaryBillItemNameService { + /** + * 查询所有记录 + * + * @return 返回集合,没有返回空List + */ + List listAll(); + + + /** + * 根据主键查询 + * + * @param id 主键 + * @return 返回记录,没有返回null + */ + SalaryBillItemNamePO getById(Long id); + + /** + * 新增,忽略null字段 + * + * @param salaryBillItemNamePO 新增的记录 + * @return 返回影响行数 + */ + int insertIgnoreNull(SalaryBillItemNamePO salaryBillItemNamePO); + + /** + * 修改,修改所有字段 + * + * @param salaryBillItemNamePO 修改的记录 + * @return 返回影响行数 + */ + int update(SalaryBillItemNamePO salaryBillItemNamePO); + + /** + * 修改,忽略null字段 + * + * @param salaryBillItemNamePO 修改的记录 + * @return 返回影响行数 + */ + int updateIgnoreNull(SalaryBillItemNamePO salaryBillItemNamePO); + + /** + * 删除记录 + * + * @param id 待删除的记录id + * @return 返回影响行数 + */ + int delete(Long id); + +} diff --git a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java new file mode 100644 index 000000000..a056df963 --- /dev/null +++ b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java @@ -0,0 +1,51 @@ +package com.engine.salary.service.impl; + +import com.api.formmode.mybatis.util.SqlProxyHandle; +import com.engine.core.impl.Service; +import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; +import com.engine.salary.mapper.salarybill.SalaryBillItemNameMapper; +import com.engine.salary.service.SalaryBillItemNameService; + +import java.util.List; + +/** + * @author Harryxzy + * @ClassName SalaryBillItemNameServiceImpl + * @date 2023/07/18 16:17 + * @description + */ +public class SalaryBillItemNameServiceImpl extends Service implements SalaryBillItemNameService { + + private SalaryBillItemNameMapper getSalaryBillItemNameMapper() { + return SqlProxyHandle.getProxy(SalaryBillItemNameMapper.class); + } + @Override + public List listAll() { + return getSalaryBillItemNameMapper().listAll(); + } + + @Override + public SalaryBillItemNamePO getById(Long id) { + return getSalaryBillItemNameMapper().getById(id); + } + + @Override + public int insertIgnoreNull(SalaryBillItemNamePO salaryBillItemNamePO) { + return getSalaryBillItemNameMapper().insertIgnoreNull(salaryBillItemNamePO); + } + + @Override + public int update(SalaryBillItemNamePO salaryBillItemNamePO) { + return getSalaryBillItemNameMapper().update(salaryBillItemNamePO); + } + + @Override + public int updateIgnoreNull(SalaryBillItemNamePO salaryBillItemNamePO) { + return getSalaryBillItemNameMapper().updateIgnoreNull(salaryBillItemNamePO); + } + + @Override + public int delete(Long id) { + return getSalaryBillItemNameMapper().delete(id); + } +} From 8e6bd24d0d9c274f9b9c786fa70bc4d722a4be57 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Wed, 19 Jul 2023 16:14:25 +0800 Subject: [PATCH 02/13] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=B7=A5?= =?UTF-8?q?=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=B1=95=E7=A4=BA=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salaryBill/bo/SalaryBillItemNameBO.java | 31 +++ .../salaryBill/dto/SalaryBillItemNameDTO.java | 30 +++ .../dto/SalaryTemplateReplenishFormDTO.java | 3 + .../dto/SalaryTemplateShowFormDTO.java | 3 + .../param/SalaryBillItemNameSaveParam.java | 46 +++++ .../salaryBill/po/SalaryBillItemNamePO.java | 31 +++ .../salarybill/SalaryBillItemNameMapper.java | 21 ++ .../salarybill/SalaryBillItemNameMapper.xml | 190 ++++++++++++++++++ .../service/SalaryBillItemNameService.java | 26 +++ .../impl/SalaryBillItemNameServiceImpl.java | 113 ++++++++++- .../salary/web/SalaryBillController.java | 13 ++ .../salary/wrapper/SalaryTemplateWrapper.java | 49 ++++- 12 files changed, 550 insertions(+), 6 deletions(-) create mode 100644 src/com/engine/salary/entity/salaryBill/bo/SalaryBillItemNameBO.java create mode 100644 src/com/engine/salary/entity/salaryBill/dto/SalaryBillItemNameDTO.java create mode 100644 src/com/engine/salary/entity/salaryBill/param/SalaryBillItemNameSaveParam.java diff --git a/src/com/engine/salary/entity/salaryBill/bo/SalaryBillItemNameBO.java b/src/com/engine/salary/entity/salaryBill/bo/SalaryBillItemNameBO.java new file mode 100644 index 000000000..0465efd66 --- /dev/null +++ b/src/com/engine/salary/entity/salaryBill/bo/SalaryBillItemNameBO.java @@ -0,0 +1,31 @@ +package com.engine.salary.entity.salaryBill.bo; + +import com.engine.salary.entity.salaryBill.dto.SalaryBillItemNameDTO; +import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; +import org.apache.commons.collections4.CollectionUtils; + +import java.util.Collections; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + * @author Harryxzy + * @ClassName SalaryBillItemNameBO + * @date 2023/07/19 9:19 + * @description 工资单薪资项目展示名称 + */ +public class SalaryBillItemNameBO { + + public static List convert2ListDTO(List SalaryBillItemNamePOList, Map itemIdNameMap){ + if (CollectionUtils.isEmpty(SalaryBillItemNamePOList)) { + return Collections.emptyList(); + } + return SalaryBillItemNamePOList.stream() + .map(po -> SalaryBillItemNameDTO.builder() + .salaryItemId(po.getSalaryItemId()) + .salaryItemShowName(po.getSalaryItemShowName()) + .build()) + .collect(Collectors.toList()); + } +} diff --git a/src/com/engine/salary/entity/salaryBill/dto/SalaryBillItemNameDTO.java b/src/com/engine/salary/entity/salaryBill/dto/SalaryBillItemNameDTO.java new file mode 100644 index 000000000..4deae25f5 --- /dev/null +++ b/src/com/engine/salary/entity/salaryBill/dto/SalaryBillItemNameDTO.java @@ -0,0 +1,30 @@ +package com.engine.salary.entity.salaryBill.dto; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @author Harryxzy + * @ClassName SalaryBillItemNameDTO + * @date 2023/07/19 9:21 + * @description 工资单薪资项目展示名称 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SalaryBillItemNameDTO { + + /** + * 薪资项目id + */ + private Long salaryItemId; + + + /** + * 工资单展示名称 + */ + private String salaryItemShowName; +} diff --git a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateReplenishFormDTO.java b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateReplenishFormDTO.java index 5a19f39e9..50bc76ba8 100644 --- a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateReplenishFormDTO.java +++ b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateReplenishFormDTO.java @@ -26,4 +26,7 @@ public class SalaryTemplateReplenishFormDTO { // 薪资项目设置") private List replenishSalaryTemplateSalaryItemSet; + // 工资单项目名称设置 + private List salaryBillItemNameSet; + } diff --git a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateShowFormDTO.java b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateShowFormDTO.java index 364cb8a63..8f3452076 100644 --- a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateShowFormDTO.java +++ b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateShowFormDTO.java @@ -29,4 +29,7 @@ public class SalaryTemplateShowFormDTO { // 薪资项目设置") private List salaryTemplateSalaryItemSet; + + // 工资单项目名称设置 + private Map salaryBillItemNameSet; } diff --git a/src/com/engine/salary/entity/salaryBill/param/SalaryBillItemNameSaveParam.java b/src/com/engine/salary/entity/salaryBill/param/SalaryBillItemNameSaveParam.java new file mode 100644 index 000000000..9674df028 --- /dev/null +++ b/src/com/engine/salary/entity/salaryBill/param/SalaryBillItemNameSaveParam.java @@ -0,0 +1,46 @@ +package com.engine.salary.entity.salaryBill.param; + +import lombok.*; + +import java.util.List; + +/** + * @author Harryxzy + * @ClassName SalaryBillItemNameSaveParam + * @date 2023/07/19 10:20 + * @description 设置工资单项目展示名参数 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class SalaryBillItemNameSaveParam { + /** + * 工资单模板id + */ + private Long salaryTemplateId; + + /** + * 工资单类型。0:正常工资单、1:补发工资单 + */ + private Integer salaryBillType; + + private List itemShowNameSetting; + + @Data + @Builder + @NoArgsConstructor + @AllArgsConstructor + public static class itemShowNameSetting { + /** + * 薪资项目id + */ + private Long salaryItemId; + + /** + * 工资单展示名称 + */ + private String salaryItemShowName; + } + +} diff --git a/src/com/engine/salary/entity/salaryBill/po/SalaryBillItemNamePO.java b/src/com/engine/salary/entity/salaryBill/po/SalaryBillItemNamePO.java index e5170d6d0..5dcf872d6 100644 --- a/src/com/engine/salary/entity/salaryBill/po/SalaryBillItemNamePO.java +++ b/src/com/engine/salary/entity/salaryBill/po/SalaryBillItemNamePO.java @@ -6,6 +6,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.util.Collection; +import java.util.Date; /** * @author Harryxzy @@ -35,6 +36,36 @@ public class SalaryBillItemNamePO { */ private Long salaryTemplateId; + /** + * 工资单类型。0:正常工资单、1:补发工资单 + */ + private Integer salaryBillType; + + /** + * 创建时间 + */ + private Date createTime; + + /** + * 更新时间 + */ + private Date updateTime; + + /** + * 创建人 + */ + private Long creator; + + /** + * 是否已删除。0:未删除、1:已删除 + */ + private Integer deleteType; + + /** + * 租户ID + */ + private String tenantKey; + //主键id集合 private Collection ids; } diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java index f589a0ae6..a3cb102a7 100644 --- a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java @@ -1,6 +1,7 @@ package com.engine.salary.mapper.salarybill; import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -65,4 +66,24 @@ public interface SalaryBillItemNameMapper { * @return 返回影响行数 */ int delete(Long id); + + /** + * 批量更新 + * @param salaryBillItemNamePO + */ + void batchUpdate(@Param("collection") List salaryBillItemNamePO); + + /** + * 批量插入 + * @param salaryBillItemNamePO + */ + void batchInsert(@Param("collection") List salaryBillItemNamePO); + + /** + * 根据薪资项目、模板id、模板类型批量删除 + * @param salaryItemIds + * @param salaryTemplateId + * @param salaryBillType + */ + void deleteByItemIdsAndTemplateId(@Param("salaryItemIds") List salaryItemIds, @Param("salaryTemplateId") Long salaryTemplateId, @Param("salaryBillType") Integer salaryBillType); } diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml index 3e6f61f46..03e0b6c6e 100644 --- a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml @@ -6,6 +6,11 @@ + + + + + @@ -14,6 +19,12 @@ , t.salary_item_id , t.salary_item_show_name , t.salary_template_id + , t.salary_bill_type + , t.delete_type + , t.creator + , t.create_time + , t.update_time + , t.tenant_key @@ -50,6 +61,9 @@ AND salary_template_id = #{salaryTemplateId} + + AND salary_bill_type = #{salaryBillType} + AND id IN @@ -77,6 +91,24 @@ salary_template_id, + + salary_bill_type, + + + creator, + + + create_time, + + + update_time, + + + delete_type, + + + tenant_key, + @@ -91,9 +123,114 @@ #{salaryTemplateId}, + + #{salaryBillType}, + + + #{creator}, + + + #{createTime}, + + + #{updateTime}, + + + #{deleteType}, + + + #{tenantKey}, + + + INSERT INTO hrsa_salary_bill_item_name ( + id, + salary_template_id, + salary_item_id, + salary_item_show_name, + salary_bill_type, + creator, + create_time, + update_time, + delete_type, + tenant_key + ) + VALUES + + ( + #{item.id}, + #{item.salaryTemplateId}, + #{item.salaryItemId}, + #{item.salaryItemShowName}, + #{item.salaryBillType}, + #{item.creator}, + #{item.createTime}, + #{item.updateTime}, + #{item.deleteType}, + #{item.tenantKey} + ) + + + + INSERT INTO hrsa_salary_send_info ( + id, + salary_template_id, + salary_item_id, + salary_item_show_name, + salary_bill_type, + creator, + create_time, + update_time, + delete_type, + tenant_key + ) + + select + #{item.id,jdbcType=DOUBLE}, + #{item.salaryTemplateId,jdbcType=DOUBLE}, + #{item.salaryItemId,jdbcType=DOUBLE}, + #{item.salaryItemShowName,jdbcType=VARCHAR}, + #{item.salaryBillType,jdbcType=INTEGER}, + #{item.creator,jdbcType=DOUBLE}, + #{item.createTime,jdbcType=DATE}, + #{item.updateTime,jdbcType=DATE}, + #{item.deleteType,jdbcType=INTEGER}, + #{item.tenantKey,jdbcType=VARCHAR} + from dual + + + + + INSERT INTO hrsa_salary_send_info ( + id, + salary_template_id, + salary_item_id, + salary_item_show_name, + salary_bill_type, + creator, + create_time, + update_time, + delete_type, + tenant_key + ) + VALUES + ( + #{item.id}, + #{item.salaryTemplateId}, + #{item.salaryItemId}, + #{item.salaryItemShowName}, + #{item.salaryBillType}, + #{item.creator}, + #{item.createTime}, + #{item.updateTime}, + #{item.deleteType}, + #{item.tenantKey} + ) + + + UPDATE hrsa_salary_bill_item_name @@ -101,6 +238,11 @@ salary_item_id=#{salaryItemId}, salary_item_show_name=#{salaryItemShowName}, salary_template_id=#{salaryTemplateId}, + salary_bill_type=#{salaryBillType}, + creator=#{creator}, + create_time={createTime}, + update_time=#{updateTime}, + tenant_key=#{tenantKey} WHERE id = #{id} AND delete_type = 0 @@ -119,10 +261,46 @@ salary_template_id=#{salaryTemplateId}, + + salary_bill_type=#{salaryBillType}, + + + creator=#{creator}, + + + create_time=#{createTime}, + + + update_time=#{updateTime}, + + + tenant_key=#{tenantKey}, + WHERE id = #{id} AND delete_type = 0 + + UPDATE hrsa_salary_bill_item_name + + + + WHEN id = #{item.id} THEN #{item.salaryItemShowName} + + + + + WHEN id = #{item.id} THEN #{item.updateTime} + + + + WHERE delete_type = 0 + AND id IN + + #{item.id} + + + @@ -131,5 +309,17 @@ WHERE id = #{id} AND delete_type = 0 + + UPDATE hrsa_salary_bill_item_name + SET delete_type=1 + WHERE delete_type = 0 + AND salary_template_id = #{salaryTemplateId} + AND salaryBillType = #{salaryBillType} + AND salary_item_id IN + + #{itemId} + + + \ No newline at end of file diff --git a/src/com/engine/salary/service/SalaryBillItemNameService.java b/src/com/engine/salary/service/SalaryBillItemNameService.java index 258740091..febe56abc 100644 --- a/src/com/engine/salary/service/SalaryBillItemNameService.java +++ b/src/com/engine/salary/service/SalaryBillItemNameService.java @@ -1,5 +1,6 @@ package com.engine.salary.service; +import com.engine.salary.entity.salaryBill.param.SalaryBillItemNameSaveParam; import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; import java.util.List; @@ -59,4 +60,29 @@ public interface SalaryBillItemNameService { */ int delete(Long id); + /** + * 根据工资单模板id和工资单类型获取 设置的项目名称信息 + * @param build + * @return + */ + List ListByTemplateAndType(SalaryBillItemNamePO build); + + /** + * 设置工资单薪资项目显示名 + * @param saveList + */ + void saveItemShowName(List saveList); + + /** + * 批量更新 + * @param needUpdateList + */ + void batchUpdate(List needUpdateList); + + /** + * 批量插入 + * @param needInsertList + */ + void batchInsert(List needInsertList); + } diff --git a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java index a056df963..2ccee1251 100644 --- a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java @@ -1,12 +1,27 @@ package com.engine.salary.service.impl; import com.api.formmode.mybatis.util.SqlProxyHandle; +import com.engine.common.util.ServiceUtil; import com.engine.core.impl.Service; +import com.engine.salary.constant.SalaryDefaultTenantConstant; +import com.engine.salary.entity.salaryBill.param.SalaryBillItemNameSaveParam; import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; +import com.engine.salary.entity.salaryBill.po.SalaryTemplatePO; +import com.engine.salary.exception.SalaryRunTimeException; import com.engine.salary.mapper.salarybill.SalaryBillItemNameMapper; import com.engine.salary.service.SalaryBillItemNameService; +import com.engine.salary.service.SalaryItemService; +import com.engine.salary.service.SalaryTemplateService; +import com.engine.salary.util.SalaryEntityUtil; +import com.google.common.collect.Lists; +import dm.jdbc.util.IdGenerator; +import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang.math.NumberUtils; +import org.apache.commons.lang3.StringUtils; +import weaver.hrm.User; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; /** * @author Harryxzy @@ -19,6 +34,14 @@ public class SalaryBillItemNameServiceImpl extends Service implements SalaryBill private SalaryBillItemNameMapper getSalaryBillItemNameMapper() { return SqlProxyHandle.getProxy(SalaryBillItemNameMapper.class); } + + private SalaryItemService getSalaryItemService(User user) { + return ServiceUtil.getService(SalaryItemServiceImpl.class, user); + } + + private SalaryTemplateService getSalaryTemplateService(User user) { + return ServiceUtil.getService(SalaryTemplateServiceImpl.class, user); + } @Override public List listAll() { return getSalaryBillItemNameMapper().listAll(); @@ -48,4 +71,92 @@ public class SalaryBillItemNameServiceImpl extends Service implements SalaryBill public int delete(Long id) { return getSalaryBillItemNameMapper().delete(id); } + + @Override + public List ListByTemplateAndType(SalaryBillItemNamePO param) { + return getSalaryBillItemNameMapper().listSome(param); + } + + @Override + public void saveItemShowName(List saveList) { + if(CollectionUtils.isEmpty(saveList)) + return; + List templateIdList = saveList.stream().map(SalaryBillItemNameSaveParam::getSalaryTemplateId).distinct().collect(Collectors.toList()); + if(CollectionUtils.isEmpty(templateIdList) || templateIdList.size()>1) + throw new SalaryRunTimeException("工资单模板id为空,或存在多个工资单模板id"); + Long salaryTemplateId = templateIdList.get(0); + SalaryTemplatePO salaryTemplatePO = getSalaryTemplateService(user).getById(salaryTemplateId); + if(Objects.isNull(salaryTemplatePO)) + throw new SalaryRunTimeException("工资单模板不存在或已被删除"); + List needInsertList = new ArrayList<>(); + List needUpdateList = new ArrayList<>(); + Date now = new Date(); + // 根据模板类型分组 + Map> saveMap = SalaryEntityUtil.convert2Map(saveList, SalaryBillItemNameSaveParam::getSalaryBillType, SalaryBillItemNameSaveParam::getItemShowNameSetting); + + for(Map.Entry> entry : saveMap.entrySet()){ + // 获取已经设置的展示名 + List billItemNameList = ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(salaryTemplateId).salaryBillType(entry.getKey()).build()); + Map billItemNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId); + List needDeleteItemIdList = new ArrayList<>(); + + entry.getValue().stream().forEach(setting -> { + if(StringUtils.isBlank(setting.getSalaryItemShowName())){ + // 显示名为空则删除设置 + needDeleteItemIdList.add(setting.getSalaryItemId()); + }else{ + if(billItemNameMap.containsKey(setting.getSalaryItemId())){ + // 更新 + SalaryBillItemNamePO po = billItemNameMap.get(setting.getSalaryItemId()); + po.setSalaryItemShowName(setting.getSalaryItemShowName()); + po.setUpdateTime(now); + needUpdateList.add(po); + }else{ + // 新增 + needInsertList.add(SalaryBillItemNamePO.builder() + .id(IdGenerator.generate()) + .salaryItemId(setting.getSalaryItemId()) + .salaryItemShowName(setting.getSalaryItemShowName()) + .salaryTemplateId(salaryTemplateId) + .salaryBillType(entry.getKey()) + .createTime(now) + .updateTime(now) + .creator(Long.valueOf(user.getUID())) + .deleteType(NumberUtils.INTEGER_ZERO) + .tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY) + .build()); + } + } + }); + // 删除 + batchDeleteByItemIdsAndTemplateId(needDeleteItemIdList, salaryTemplateId, entry.getKey()); + } + // 入库 + batchUpdate(needUpdateList); + batchInsert(needInsertList); + } + + @Override + public void batchUpdate(List needUpdateList) { + if(CollectionUtils.isEmpty(needUpdateList)) + return; + List> partition = Lists.partition(needUpdateList, 500); + partition.forEach(getSalaryBillItemNameMapper()::batchUpdate); + } + + @Override + public void batchInsert(List needInsertList) { + if(CollectionUtils.isEmpty(needInsertList)) + return; + List> partition = Lists.partition(needInsertList, 500); + partition.forEach(getSalaryBillItemNameMapper()::batchInsert); + } + + public void batchDeleteByItemIdsAndTemplateId(List salaryItemIds, Long salaryTemplateId, Integer salaryBillType) { + if(CollectionUtils.isEmpty(salaryItemIds) || Objects.isNull(salaryTemplateId) || Objects.isNull(salaryBillType)) + return; + getSalaryBillItemNameMapper().deleteByItemIdsAndTemplateId(salaryItemIds, salaryTemplateId, salaryBillType); + } + + } diff --git a/src/com/engine/salary/web/SalaryBillController.java b/src/com/engine/salary/web/SalaryBillController.java index ea5cdeece..f8a7ce21d 100644 --- a/src/com/engine/salary/web/SalaryBillController.java +++ b/src/com/engine/salary/web/SalaryBillController.java @@ -98,6 +98,19 @@ public class SalaryBillController { return new ResponseResult(user).run(getSalaryTemplateWrapper(user)::getShowForm, id); } + /** + * 设置工资单模板薪资项显示名称 + * + * @return + */ + @POST + @Path("/template/saveItemShowName") + @Produces(MediaType.APPLICATION_JSON) + public String saveItemShowName(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody List param) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult, String>(user).run(getSalaryTemplateWrapper(user)::saveItemShowName, param); + } + /** * 获取薪资项目设置 * diff --git a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java index d5d7a68cf..16de37b83 100644 --- a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java @@ -2,8 +2,10 @@ package com.engine.salary.wrapper; import com.engine.common.util.ServiceUtil; import com.engine.core.impl.Service; +import com.engine.salary.entity.salaryBill.bo.SalaryBillItemNameBO; import com.engine.salary.entity.salaryBill.dto.*; import com.engine.salary.entity.salaryBill.param.*; +import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; import com.engine.salary.entity.salaryBill.po.SalaryTemplatePO; import com.engine.salary.entity.salaryitem.po.SalaryItemPO; import com.engine.salary.entity.salarysob.po.SalarySobBackItemPO; @@ -65,6 +67,10 @@ public class SalaryTemplateWrapper extends Service { return ServiceUtil.getService(SalaryBillBaseSetServiceImpl.class, user); } + private SalaryBillItemNameService getSalaryBillItemNameService(User user) { + return ServiceUtil.getService(SalaryBillItemNameServiceImpl.class, user); + } + /** * 工资单模板列表 * @@ -247,12 +253,25 @@ public class SalaryTemplateWrapper extends Service { // List groupPOS = getSalarySobItemGroupService(user).listBySalarySobId(po.getSalarySobId()); // Map groupIdNameMap = SalaryEntityUtil.convert2Map(groupPOS, SalarySobItemGroupPO::getId, SalarySobItemGroupPO::getName); + // 获取工资单薪资项目展示名信息 + List billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(id).salaryBillType(0).build()); + Map itemShowNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId, SalaryBillItemNamePO::getSalaryItemShowName); + // 获取薪资项目信息 + List salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList, itemIdNameMap); + Map salaryBillItemNameDTOMap = SalaryEntityUtil.convert2Map(salaryBillItemNameDTOS, SalaryBillItemNameDTO::getSalaryItemId); + if (CollectionUtils.isNotEmpty(salaryTemplateShowSetData)) { salaryTemplateShowSetData.stream() //排除人员消息 .filter(data -> !StringUtils.equals(data.getGroupId(), "111111111111111111")) .forEach(data -> { - data.getItems().forEach(item -> item.setName(itemIdNameMap.getOrDefault(Long.valueOf(item.getSalaryItemId()), item.getName()))); + data.getItems().forEach(item -> { + Long salaryItemId = Long.valueOf(item.getSalaryItemId()); + item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); + if(itemShowNameMap.containsKey(salaryItemId)){ + item.setName(itemShowNameMap.get(salaryItemId) + "(" + item.getName() +")"); + } + }); }); } @@ -262,6 +281,7 @@ public class SalaryTemplateWrapper extends Service { .vars(Arrays.stream(SalaryTemplateVarEnum.values()).map(SalaryTemplateVarEnum::getValue).collect(Collectors.toList())) .salaryTemplateShowSet(salaryTemplateShowSet) .salaryTemplateSalaryItemSet(salaryTemplateShowSetData) + .salaryBillItemNameSet(salaryBillItemNameDTOMap) .build(); } @@ -388,6 +408,8 @@ public class SalaryTemplateWrapper extends Service { // 补发薪资项目设置 List replenishSalaryItemSetting; + // 补发薪资项目显示名称 + List salaryBillItemNameDTOS = new ArrayList<>(); if (id != null) { SalaryTemplatePO po = getSalaryTemplateService(user).getById(id); if (po == null) { @@ -399,13 +421,25 @@ public class SalaryTemplateWrapper extends Service { // 同步补发薪资项目名称 List itemPOS = getSalaryItemService(user).listAll(); Map itemIdNameMap = SalaryEntityUtil.convert2Map(itemPOS, SalaryItemPO::getId, SalaryItemPO::getName); + // 获取工资单薪资项目展示名信息 + List billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(id).salaryBillType(1).build()); + Map itemShowNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId, SalaryBillItemNamePO::getSalaryItemShowName); + // 获取薪资项目信息 + salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList, itemIdNameMap); + if (CollectionUtils.isNotEmpty(replenishSalaryItemSetting)) { replenishSalaryItemSetting.stream() //排除人员消息 - .filter(data -> !StringUtils.equals(data.getGroupId(), "111111111111111111")) - .forEach(data -> { - data.getItems().forEach(item -> item.setName(itemIdNameMap.getOrDefault(Long.valueOf(item.getSalaryItemId()), item.getName()))); - }); + .filter(data -> !StringUtils.equals(data.getGroupId(), "111111111111111111")) + .forEach(data -> { + data.getItems().forEach(item -> { + Long salaryItemId = Long.valueOf(item.getSalaryItemId()); + item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); + if(itemShowNameMap.containsKey(salaryItemId)){ + item.setName(itemShowNameMap.get(salaryItemId)); + } + }); + }); } } else { replenishSalaryItemSetting = getReplenishSalaryItemSet(replenishFormQueryParam.getSalarySobId()); @@ -417,6 +451,7 @@ public class SalaryTemplateWrapper extends Service { return SalaryTemplateReplenishFormDTO.builder() .id(id) .replenishSalaryTemplateSalaryItemSet(replenishSalaryItemSetting) + .salaryBillItemNameSet(salaryBillItemNameDTOS) .build(); } @@ -459,4 +494,8 @@ public class SalaryTemplateWrapper extends Service { ) .collect(Collectors.toList()); } + + public void saveItemShowName(List saveList) { + getSalaryBillItemNameService(user).saveItemShowName(saveList); + } } From 07b36db9e1cf8bba5baebfef32a9add840d1f3d0 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Wed, 19 Jul 2023 16:27:55 +0800 Subject: [PATCH 03/13] =?UTF-8?q?=E5=8A=A0=E4=B8=8A=E5=A4=A7=E6=8B=AC?= =?UTF-8?q?=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salary/service/impl/SalaryBillItemNameServiceImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java index 2ccee1251..267657ea3 100644 --- a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java @@ -82,12 +82,14 @@ public class SalaryBillItemNameServiceImpl extends Service implements SalaryBill if(CollectionUtils.isEmpty(saveList)) return; List templateIdList = saveList.stream().map(SalaryBillItemNameSaveParam::getSalaryTemplateId).distinct().collect(Collectors.toList()); - if(CollectionUtils.isEmpty(templateIdList) || templateIdList.size()>1) + if(CollectionUtils.isEmpty(templateIdList) || templateIdList.size()>1){ throw new SalaryRunTimeException("工资单模板id为空,或存在多个工资单模板id"); + } Long salaryTemplateId = templateIdList.get(0); SalaryTemplatePO salaryTemplatePO = getSalaryTemplateService(user).getById(salaryTemplateId); - if(Objects.isNull(salaryTemplatePO)) + if(Objects.isNull(salaryTemplatePO)){ throw new SalaryRunTimeException("工资单模板不存在或已被删除"); + } List needInsertList = new ArrayList<>(); List needUpdateList = new ArrayList<>(); Date now = new Date(); From b95663ada88ee43b929bf1454f15b2cf03a2b50c Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Thu, 20 Jul 2023 10:42:16 +0800 Subject: [PATCH 04/13] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=B7=A5?= =?UTF-8?q?=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=B1=95=E7=A4=BA=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../param/SalaryTemplateSaveParam.java | 2 ++ .../salarybill/SalaryBillItemNameMapper.java | 6 ++++ .../salarybill/SalaryBillItemNameMapper.xml | 10 +++++++ .../service/SalaryBillItemNameService.java | 5 ++++ .../impl/SalaryBillItemNameServiceImpl.java | 15 ++++++++-- .../impl/SalaryTemplateServiceImpl.java | 28 +++++++++++++++++++ 6 files changed, 64 insertions(+), 2 deletions(-) diff --git a/src/com/engine/salary/entity/salaryBill/param/SalaryTemplateSaveParam.java b/src/com/engine/salary/entity/salaryBill/param/SalaryTemplateSaveParam.java index ff8af0607..bbf16949e 100644 --- a/src/com/engine/salary/entity/salaryBill/param/SalaryTemplateSaveParam.java +++ b/src/com/engine/salary/entity/salaryBill/param/SalaryTemplateSaveParam.java @@ -104,6 +104,8 @@ public class SalaryTemplateSaveParam { */ private String feedbackUrl; + List salaryBillItemNameSetting; + public static void checkParam(SalaryTemplateSaveParam saveParam) { if (saveParam.getSalarySobId() == null) { throw new SalaryRunTimeException("薪资账套表的主键id必传;"); diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java index a3cb102a7..744008c3a 100644 --- a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java @@ -86,4 +86,10 @@ public interface SalaryBillItemNameMapper { * @param salaryBillType */ void deleteByItemIdsAndTemplateId(@Param("salaryItemIds") List salaryItemIds, @Param("salaryTemplateId") Long salaryTemplateId, @Param("salaryBillType") Integer salaryBillType); + + /** + * 根据idList删除 + * @param longs + */ + void deleteByIds(@Param("collection") List longs); } diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml index 03e0b6c6e..c3c46c80a 100644 --- a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml @@ -321,5 +321,15 @@ + + UPDATE hrsa_salary_bill_item_name + SET delete_type=1 + WHERE delete_type = 0 + AND id IN + + #{id} + + + \ No newline at end of file diff --git a/src/com/engine/salary/service/SalaryBillItemNameService.java b/src/com/engine/salary/service/SalaryBillItemNameService.java index febe56abc..e6d217d4c 100644 --- a/src/com/engine/salary/service/SalaryBillItemNameService.java +++ b/src/com/engine/salary/service/SalaryBillItemNameService.java @@ -85,4 +85,9 @@ public interface SalaryBillItemNameService { */ void batchInsert(List needInsertList); + /** + * 根据id批量删除 + * @param needDeleteIds + */ + void deleteByIds(List needDeleteIds); } diff --git a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java index 267657ea3..7b5b95d93 100644 --- a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java @@ -140,20 +140,31 @@ public class SalaryBillItemNameServiceImpl extends Service implements SalaryBill @Override public void batchUpdate(List needUpdateList) { - if(CollectionUtils.isEmpty(needUpdateList)) + if(CollectionUtils.isEmpty(needUpdateList)){ return; + } List> partition = Lists.partition(needUpdateList, 500); partition.forEach(getSalaryBillItemNameMapper()::batchUpdate); } @Override public void batchInsert(List needInsertList) { - if(CollectionUtils.isEmpty(needInsertList)) + if(CollectionUtils.isEmpty(needInsertList)){ return; + } List> partition = Lists.partition(needInsertList, 500); partition.forEach(getSalaryBillItemNameMapper()::batchInsert); } + @Override + public void deleteByIds(List needDeleteIds) { + if(CollectionUtils.isEmpty(needDeleteIds)){ + return; + } + List> partition = Lists.partition(needDeleteIds, 1000); + partition.forEach(getSalaryBillItemNameMapper()::deleteByIds); + } + public void batchDeleteByItemIdsAndTemplateId(List salaryItemIds, Long salaryTemplateId, Integer salaryBillType) { if(CollectionUtils.isEmpty(salaryItemIds) || Objects.isNull(salaryTemplateId) || Objects.isNull(salaryBillType)) return; diff --git a/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java b/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java index 7d0b790c5..30d6a26f0 100644 --- a/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java @@ -7,11 +7,13 @@ import com.engine.salary.biz.SalarySobBiz; import com.engine.salary.biz.SalaryTemplateBiz; import com.engine.salary.entity.salaryBill.bo.SalaryTemplateBO; import com.engine.salary.entity.salaryBill.dto.SalaryTemplateListDTO; +import com.engine.salary.entity.salaryBill.dto.SalaryTemplateSalaryItemListDTO; import com.engine.salary.entity.salaryBill.dto.SalaryTemplateSalaryItemSetListDTO; import com.engine.salary.entity.salaryBill.param.SalaryTemplateCopyParam; import com.engine.salary.entity.salaryBill.param.SalaryTemplateDefaultUseParam; import com.engine.salary.entity.salaryBill.param.SalaryTemplateQueryParam; import com.engine.salary.entity.salaryBill.param.SalaryTemplateSaveParam; +import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; import com.engine.salary.entity.salaryBill.po.SalaryTemplatePO; import com.engine.salary.entity.salarysob.dto.SalarySobItemAggregateDTO; import com.engine.salary.entity.salarysob.dto.SalarySobItemDTO; @@ -59,6 +61,10 @@ public class SalaryTemplateServiceImpl extends Service implements SalaryTemplate return ServiceUtil.getService(SalarySobItemHideServiceImpl.class, user); } + private SalaryBillItemNameService getSalaryBillItemNameService(User user) { + return ServiceUtil.getService(SalaryBillItemNameServiceImpl.class, user); + } + @Override public SalaryTemplatePO getById(Long id) { return mapper.getById(id); @@ -138,6 +144,10 @@ public class SalaryTemplateServiceImpl extends Service implements SalaryTemplate salaryTemplate.setSalaryItemZeroStatus(saveParam.getSalaryItemZeroStatus()?1:0); salaryTemplate.setAutoSendCycleType(saveParam.getAutoSendCycleType()); mapper.insert(salaryTemplate); + + // 存储工资单项目自定义名称信息 + saveParam.getSalaryBillItemNameSetting().stream().forEach(set -> set.setSalaryTemplateId(salaryTemplate.getId())); + getSalaryBillItemNameService(user).saveItemShowName(saveParam.getSalaryBillItemNameSetting()); // 记录日志 // SalaryLoggerUtil.recordAddSingleLog(salaryTemplateLoggerTemplate, // salaryTemplate.getId(), @@ -204,6 +214,24 @@ public class SalaryTemplateServiceImpl extends Service implements SalaryTemplate salaryTemplateNew.setSalaryItemSetting(saveParam.getSalaryItemSetting() != null ? JSONUtil.toJsonStr(saveParam.getSalaryItemSetting()) : ""); salaryTemplateNew.setReplenishSalaryItemSetting(saveParam.getReplenishSalaryItemSetting() != null ? JSONUtil.toJsonStr(saveParam.getReplenishSalaryItemSetting()) : ""); mapper.updateById(salaryTemplateNew); + + // 保存自定义工资单项目名称信息 + getSalaryBillItemNameService(user).saveItemShowName(saveParam.getSalaryBillItemNameSetting()); + // 模板中没有的薪资项目需要同步删除显示名称表 + List billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(saveParam.getId()).build()); + Map> billItemNameMap = SalaryEntityUtil.group2Map(billItemNameList, SalaryBillItemNamePO::getSalaryBillType); + List saveItemList = saveParam.getSalaryItemSetting().stream().map(SalaryTemplateSalaryItemSetListDTO::getItems).flatMap(Collection::stream).collect(Collectors.toList()); + Set saveItemIdList = SalaryEntityUtil.properties(saveItemList, SalaryTemplateSalaryItemListDTO::getSalaryItemId); + // 正常工资单模板 + List needDeleteIds = billItemNameMap.getOrDefault(NumberUtils.INTEGER_ZERO, Collections.emptyList()).stream().filter(salaryBillItemNamepo -> !saveItemIdList.contains(salaryBillItemNamepo.getSalaryItemId().toString())) + .map(SalaryBillItemNamePO::getId).collect(Collectors.toList()); + // 补发工资单模板 + List replenishItemList = saveParam.getReplenishSalaryItemSetting().stream().map(SalaryTemplateSalaryItemSetListDTO::getItems).flatMap(Collection::stream).collect(Collectors.toList()); + Set saveReplenishItemIdList = SalaryEntityUtil.properties(replenishItemList, SalaryTemplateSalaryItemListDTO::getSalaryItemId); + needDeleteIds.addAll(billItemNameMap.getOrDefault(NumberUtils.INTEGER_ONE, Collections.emptyList()).stream().filter(salaryBillItemNamepo -> !saveReplenishItemIdList.contains(salaryBillItemNamepo.getSalaryItemId().toString())) + .map(SalaryBillItemNamePO::getId).collect(Collectors.toList())); + getSalaryBillItemNameService(user).deleteByIds(needDeleteIds); + // 记录日志 // SalaryLoggerUtil.recordUpdateSingleLog(salaryTemplateLoggerTemplate, // salaryTemplate.getId(), From fd3abc7f6553bb3961830faf3d39f66443f5d675 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Thu, 20 Jul 2023 14:12:33 +0800 Subject: [PATCH 05/13] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=B7=A5?= =?UTF-8?q?=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=B1=95=E7=A4=BA=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salaryBill/dto/SalaryTemplateSalaryItemListDTO.java | 5 ++++- src/com/engine/salary/wrapper/SalaryTemplateWrapper.java | 6 ++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateSalaryItemListDTO.java b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateSalaryItemListDTO.java index bedf72566..6e4049a95 100644 --- a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateSalaryItemListDTO.java +++ b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateSalaryItemListDTO.java @@ -26,9 +26,12 @@ public class SalaryTemplateSalaryItemListDTO { // 薪资项目值") private String salaryItemValue; -// 薪资项目名称") +// 薪资项目展示名称 private String name; + // 薪资项目名称原始值 + private String originName; + // 顺序") private Integer sortedIndex; } diff --git a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java index 16de37b83..b3d4fca86 100644 --- a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java @@ -267,9 +267,11 @@ public class SalaryTemplateWrapper extends Service { .forEach(data -> { data.getItems().forEach(item -> { Long salaryItemId = Long.valueOf(item.getSalaryItemId()); - item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); + item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); if(itemShowNameMap.containsKey(salaryItemId)){ - item.setName(itemShowNameMap.get(salaryItemId) + "(" + item.getName() +")"); + item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) +")"); + }else{ + item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); } }); }); From 84d918495963a39582f5bb3303fd78134c126a2b Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Thu, 20 Jul 2023 15:37:20 +0800 Subject: [PATCH 06/13] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=B7=A5?= =?UTF-8?q?=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=B1=95=E7=A4=BA=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salary/mapper/salarybill/SalaryBillItemNameMapper.xml | 2 +- .../salary/service/impl/SalaryBillItemNameServiceImpl.java | 1 + src/com/engine/salary/wrapper/SalaryTemplateWrapper.java | 6 ++++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml index c3c46c80a..d08d2cb2c 100644 --- a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml @@ -314,7 +314,7 @@ SET delete_type=1 WHERE delete_type = 0 AND salary_template_id = #{salaryTemplateId} - AND salaryBillType = #{salaryBillType} + AND salary_bill_type = #{salaryBillType} AND salary_item_id IN #{itemId} diff --git a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java index 7b5b95d93..756af271b 100644 --- a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java @@ -79,6 +79,7 @@ public class SalaryBillItemNameServiceImpl extends Service implements SalaryBill @Override public void saveItemShowName(List saveList) { + saveList= saveList.stream().filter(param -> !Objects.isNull(param.getSalaryTemplateId()) && CollectionUtils.isNotEmpty(param.getItemShowNameSetting())).collect(Collectors.toList()); if(CollectionUtils.isEmpty(saveList)) return; List templateIdList = saveList.stream().map(SalaryBillItemNameSaveParam::getSalaryTemplateId).distinct().collect(Collectors.toList()); diff --git a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java index b3d4fca86..dbb8b521f 100644 --- a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java @@ -436,9 +436,11 @@ public class SalaryTemplateWrapper extends Service { .forEach(data -> { data.getItems().forEach(item -> { Long salaryItemId = Long.valueOf(item.getSalaryItemId()); - item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); + item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); if(itemShowNameMap.containsKey(salaryItemId)){ - item.setName(itemShowNameMap.get(salaryItemId)); + item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) + ")"); + }else{ + item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); } }); }); From 19c297dfe98088db16a76fb637a720a032be53fc Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Thu, 20 Jul 2023 15:57:27 +0800 Subject: [PATCH 07/13] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=B7=A5?= =?UTF-8?q?=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=B1=95=E7=A4=BA=E5=90=8Dfix?= =?UTF-8?q?=E8=A1=A5=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salaryBill/dto/SalaryTemplateReplenishFormDTO.java | 3 ++- src/com/engine/salary/wrapper/SalaryTemplateWrapper.java | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateReplenishFormDTO.java b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateReplenishFormDTO.java index 50bc76ba8..0e90569db 100644 --- a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateReplenishFormDTO.java +++ b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateReplenishFormDTO.java @@ -6,6 +6,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.util.List; +import java.util.Map; /** * @author Harryxzy @@ -27,6 +28,6 @@ public class SalaryTemplateReplenishFormDTO { private List replenishSalaryTemplateSalaryItemSet; // 工资单项目名称设置 - private List salaryBillItemNameSet; + private Map salaryBillItemNameSet; } diff --git a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java index dbb8b521f..0b4eefaef 100644 --- a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java @@ -411,7 +411,7 @@ public class SalaryTemplateWrapper extends Service { // 补发薪资项目设置 List replenishSalaryItemSetting; // 补发薪资项目显示名称 - List salaryBillItemNameDTOS = new ArrayList<>(); + Map salaryBillItemNameDTOMap = new HashMap<>(); if (id != null) { SalaryTemplatePO po = getSalaryTemplateService(user).getById(id); if (po == null) { @@ -427,7 +427,8 @@ public class SalaryTemplateWrapper extends Service { List billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(id).salaryBillType(1).build()); Map itemShowNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId, SalaryBillItemNamePO::getSalaryItemShowName); // 获取薪资项目信息 - salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList, itemIdNameMap); + List salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList, itemIdNameMap); + salaryBillItemNameDTOMap = SalaryEntityUtil.convert2Map(salaryBillItemNameDTOS, SalaryBillItemNameDTO::getSalaryItemId); if (CollectionUtils.isNotEmpty(replenishSalaryItemSetting)) { replenishSalaryItemSetting.stream() @@ -455,7 +456,7 @@ public class SalaryTemplateWrapper extends Service { return SalaryTemplateReplenishFormDTO.builder() .id(id) .replenishSalaryTemplateSalaryItemSet(replenishSalaryItemSetting) - .salaryBillItemNameSet(salaryBillItemNameDTOS) + .salaryBillItemNameSet(salaryBillItemNameDTOMap) .build(); } From ad6a57131025279b198e49120068430f3661a98e Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Fri, 21 Jul 2023 11:08:54 +0800 Subject: [PATCH 08/13] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=B7=A5?= =?UTF-8?q?=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=B1=95=E7=A4=BA=E5=90=8Dfix?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salaryBill/dto/SalaryTemplateSalaryItemListDTO.java | 7 +++++-- .../salary/mapper/salarybill/SalaryBillItemNameMapper.xml | 4 ++-- .../salary/service/impl/SalaryTemplateServiceImpl.java | 4 ++-- src/com/engine/salary/wrapper/SalaryTemplateWrapper.java | 4 ++++ 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateSalaryItemListDTO.java b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateSalaryItemListDTO.java index 6e4049a95..858db75a1 100644 --- a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateSalaryItemListDTO.java +++ b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateSalaryItemListDTO.java @@ -26,10 +26,13 @@ public class SalaryTemplateSalaryItemListDTO { // 薪资项目值") private String salaryItemValue; -// 薪资项目展示名称 + // 模板展示名称 salaryItemShowName+(originName) private String name; - // 薪资项目名称原始值 + // 薪资项目修改后展示名称 + private String salaryItemShowName; + + // 薪资项目名称原始值 private String originName; // 顺序") diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml index d08d2cb2c..fc8e2bfbe 100644 --- a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml @@ -174,7 +174,7 @@ - INSERT INTO hrsa_salary_send_info ( + INSERT INTO hrsa_salary_bill_item_name ( id, salary_template_id, salary_item_id, @@ -203,7 +203,7 @@ - INSERT INTO hrsa_salary_send_info ( + INSERT INTO hrsa_salary_bill_item_name ( id, salary_template_id, salary_item_id, diff --git a/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java b/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java index 30d6a26f0..ea72331d8 100644 --- a/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java @@ -222,10 +222,10 @@ public class SalaryTemplateServiceImpl extends Service implements SalaryTemplate Map> billItemNameMap = SalaryEntityUtil.group2Map(billItemNameList, SalaryBillItemNamePO::getSalaryBillType); List saveItemList = saveParam.getSalaryItemSetting().stream().map(SalaryTemplateSalaryItemSetListDTO::getItems).flatMap(Collection::stream).collect(Collectors.toList()); Set saveItemIdList = SalaryEntityUtil.properties(saveItemList, SalaryTemplateSalaryItemListDTO::getSalaryItemId); - // 正常工资单模板 + // 正常工资单模板中删除的薪资项目 List needDeleteIds = billItemNameMap.getOrDefault(NumberUtils.INTEGER_ZERO, Collections.emptyList()).stream().filter(salaryBillItemNamepo -> !saveItemIdList.contains(salaryBillItemNamepo.getSalaryItemId().toString())) .map(SalaryBillItemNamePO::getId).collect(Collectors.toList()); - // 补发工资单模板 + // 补发工资单模板中删除的薪资项目 List replenishItemList = saveParam.getReplenishSalaryItemSetting().stream().map(SalaryTemplateSalaryItemSetListDTO::getItems).flatMap(Collection::stream).collect(Collectors.toList()); Set saveReplenishItemIdList = SalaryEntityUtil.properties(replenishItemList, SalaryTemplateSalaryItemListDTO::getSalaryItemId); needDeleteIds.addAll(billItemNameMap.getOrDefault(NumberUtils.INTEGER_ONE, Collections.emptyList()).stream().filter(salaryBillItemNamepo -> !saveReplenishItemIdList.contains(salaryBillItemNamepo.getSalaryItemId().toString())) diff --git a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java index 0b4eefaef..83793e78e 100644 --- a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java @@ -269,8 +269,10 @@ public class SalaryTemplateWrapper extends Service { Long salaryItemId = Long.valueOf(item.getSalaryItemId()); item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); if(itemShowNameMap.containsKey(salaryItemId)){ + item.setSalaryItemShowName(itemShowNameMap.get(salaryItemId)); item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) +")"); }else{ + item.setSalaryItemShowName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); } }); @@ -439,8 +441,10 @@ public class SalaryTemplateWrapper extends Service { Long salaryItemId = Long.valueOf(item.getSalaryItemId()); item.setOriginName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); if(itemShowNameMap.containsKey(salaryItemId)){ + item.setSalaryItemShowName(itemShowNameMap.get(salaryItemId)); item.setName(itemShowNameMap.get(salaryItemId) + "(" + itemIdNameMap.getOrDefault(salaryItemId, item.getName()) + ")"); }else{ + item.setSalaryItemShowName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); item.setName(itemIdNameMap.getOrDefault(salaryItemId, item.getName())); } }); From f282f1a3ab33fc64f7bbe7513a0d529db917653a Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Fri, 28 Jul 2023 17:51:50 +0800 Subject: [PATCH 09/13] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=B7=A5?= =?UTF-8?q?=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=B1=95=E7=A4=BA=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../engine/salary/entity/salaryBill/bo/SalaryTemplateBO.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/com/engine/salary/entity/salaryBill/bo/SalaryTemplateBO.java b/src/com/engine/salary/entity/salaryBill/bo/SalaryTemplateBO.java index a12f0e81f..050807ff0 100644 --- a/src/com/engine/salary/entity/salaryBill/bo/SalaryTemplateBO.java +++ b/src/com/engine/salary/entity/salaryBill/bo/SalaryTemplateBO.java @@ -120,6 +120,8 @@ public class SalaryTemplateBO { .id(String.valueOf(i.getSalaryItemId())) .salaryItemId(String.valueOf(i.getSalaryItemId())) .name(i.getName()) + .salaryItemShowName(i.getName()) + .originName(i.getName()) .sortedIndex(i.getSortedIndex()) .build()); }); From b7203625c1531194c06499720abebaaf90be4fdd Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Mon, 31 Jul 2023 10:47:00 +0800 Subject: [PATCH 10/13] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=B7=A5?= =?UTF-8?q?=E8=B5=84=E9=A1=B9=E7=9B=AE=E5=B1=95=E7=A4=BA=E5=90=8Dfix=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salary/action/InitSalaryAction.java | 4 +-- .../salaryBill/bo/SalaryBillItemNameBO.java | 3 +-- .../SalaryBillSalaryGroupQueryParam.java | 5 ++++ .../param/SalaryBillSalaryItemQueryParam.java | 2 ++ .../salary/service/SalaryTemplateService.java | 2 +- .../impl/SalaryTemplateServiceImpl.java | 27 +++++++++++++++++-- .../salary/wrapper/SalaryTemplateWrapper.java | 8 +++--- 7 files changed, 40 insertions(+), 11 deletions(-) diff --git a/src/com/engine/salary/action/InitSalaryAction.java b/src/com/engine/salary/action/InitSalaryAction.java index 25e0669c8..4b2b0472b 100644 --- a/src/com/engine/salary/action/InitSalaryAction.java +++ b/src/com/engine/salary/action/InitSalaryAction.java @@ -77,7 +77,7 @@ public class InitSalaryAction implements Action { List errorNotice = (List) map.get("errorNotice"); if (CollectionUtils.isNotEmpty(errorNotice)) { - log.error("调薪存在异常 requestId:{} ,参数:{}, map:{}", requestInfo.getRequestid(), build, map); + log.error("定薪存在异常 requestId:{} ,参数:{}, map:{}", requestInfo.getRequestid(), build, map); List> excelComments = (List>) map.get("errorNotice"); StringBuilder message = new StringBuilder(""); for (Map comments : excelComments) { @@ -87,7 +87,7 @@ public class InitSalaryAction implements Action { return FAILURE_AND_CONTINUE; } } catch (Exception e) { - log.error("调薪异常", e); + log.error("定薪异常", e); requestInfo.getRequestManager().setMessage(e.getMessage()); return FAILURE_AND_CONTINUE; } diff --git a/src/com/engine/salary/entity/salaryBill/bo/SalaryBillItemNameBO.java b/src/com/engine/salary/entity/salaryBill/bo/SalaryBillItemNameBO.java index 0465efd66..ce1deaf67 100644 --- a/src/com/engine/salary/entity/salaryBill/bo/SalaryBillItemNameBO.java +++ b/src/com/engine/salary/entity/salaryBill/bo/SalaryBillItemNameBO.java @@ -6,7 +6,6 @@ import org.apache.commons.collections4.CollectionUtils; import java.util.Collections; import java.util.List; -import java.util.Map; import java.util.stream.Collectors; /** @@ -17,7 +16,7 @@ import java.util.stream.Collectors; */ public class SalaryBillItemNameBO { - public static List convert2ListDTO(List SalaryBillItemNamePOList, Map itemIdNameMap){ + public static List convert2ListDTO(List SalaryBillItemNamePOList){ if (CollectionUtils.isEmpty(SalaryBillItemNamePOList)) { return Collections.emptyList(); } diff --git a/src/com/engine/salary/entity/salaryBill/param/SalaryBillSalaryGroupQueryParam.java b/src/com/engine/salary/entity/salaryBill/param/SalaryBillSalaryGroupQueryParam.java index 8bf974208..36d8ab498 100644 --- a/src/com/engine/salary/entity/salaryBill/param/SalaryBillSalaryGroupQueryParam.java +++ b/src/com/engine/salary/entity/salaryBill/param/SalaryBillSalaryGroupQueryParam.java @@ -23,4 +23,9 @@ public class SalaryBillSalaryGroupQueryParam extends BaseQueryParam { * 前端已有的分组id */ private List existSalaryGroupIds; + + /** + * 工资单模板id + */ + private Long salaryTemplateId; } diff --git a/src/com/engine/salary/entity/salaryBill/param/SalaryBillSalaryItemQueryParam.java b/src/com/engine/salary/entity/salaryBill/param/SalaryBillSalaryItemQueryParam.java index ee0be17f7..26c819771 100644 --- a/src/com/engine/salary/entity/salaryBill/param/SalaryBillSalaryItemQueryParam.java +++ b/src/com/engine/salary/entity/salaryBill/param/SalaryBillSalaryItemQueryParam.java @@ -19,4 +19,6 @@ public class SalaryBillSalaryItemQueryParam extends BaseQueryParam { private Boolean isReplenish; private List existSalaryItemIds; + + private Long salaryTemplateId; } diff --git a/src/com/engine/salary/service/SalaryTemplateService.java b/src/com/engine/salary/service/SalaryTemplateService.java index bdf8826cb..29766417c 100644 --- a/src/com/engine/salary/service/SalaryTemplateService.java +++ b/src/com/engine/salary/service/SalaryTemplateService.java @@ -97,7 +97,7 @@ public interface SalaryTemplateService { * @param salarySobId * @return */ - List getSalaryItemSetContainHide(Long salarySobId, boolean isReplenish); + List getSalaryItemSetContainHide(Long salarySobId, Long salaryTemplateId, boolean isReplenish); /** * 获取默认工资单模板 diff --git a/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java b/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java index ea72331d8..60788d49a 100644 --- a/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java @@ -28,6 +28,7 @@ import com.engine.salary.util.page.PageInfo; import com.engine.salary.util.page.SalaryPageUtil; import com.mzlion.core.utils.BeanUtils; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.math.NumberUtils; import weaver.hrm.User; @@ -336,9 +337,31 @@ public class SalaryTemplateServiceImpl extends Service implements SalaryTemplate } @Override - public List getSalaryItemSetContainHide(Long salarySobId, boolean isReplenish) { + public List getSalaryItemSetContainHide(Long salarySobId, Long salaryTemplateId, boolean isReplenish) { SalarySobItemAggregateDTO salarySobItemAggregate = getSalarySobItemService(user).getAggregateBySalarySobId(salarySobId); - return SalaryTemplateBO.convertSalarySobItemAggregateToSalaryItemSet(salarySobItemAggregate, new Long(user.getUID()), isReplenish); + // 获取工资单薪资项目展示名信息 + List billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType( + SalaryBillItemNamePO.builder().salaryTemplateId(salaryTemplateId) + .salaryBillType(isReplenish ? 1 : 0) + .build()); + Map itemShowNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId, SalaryBillItemNamePO::getSalaryItemShowName); + + List salaryTemplateSalaryItemSetListDTOS = SalaryTemplateBO.convertSalarySobItemAggregateToSalaryItemSet(salarySobItemAggregate, new Long(user.getUID()), isReplenish); + salaryTemplateSalaryItemSetListDTOS.stream() + .filter(data -> !StringUtils.equals(data.getGroupId(), "111111111111111111")) + .forEach(data -> { + data.getItems().forEach(item -> { + Long salaryItemId = Long.valueOf(item.getSalaryItemId()); + if(itemShowNameMap.containsKey(salaryItemId)){ + item.setSalaryItemShowName(itemShowNameMap.get(salaryItemId)); + item.setName(itemShowNameMap.get(salaryItemId) + "(" + item.getOriginName() +")"); + }else{ + item.setSalaryItemShowName(item.getOriginName()); + item.setName(item.getOriginName()); + } + }); + }); + return salaryTemplateSalaryItemSetListDTOS; } @Override diff --git a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java index 83793e78e..b0e0c9be9 100644 --- a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java @@ -257,7 +257,7 @@ public class SalaryTemplateWrapper extends Service { List billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(id).salaryBillType(0).build()); Map itemShowNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId, SalaryBillItemNamePO::getSalaryItemShowName); // 获取薪资项目信息 - List salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList, itemIdNameMap); + List salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList); Map salaryBillItemNameDTOMap = SalaryEntityUtil.convert2Map(salaryBillItemNameDTOS, SalaryBillItemNameDTO::getSalaryItemId); if (CollectionUtils.isNotEmpty(salaryTemplateShowSetData)) { @@ -429,7 +429,7 @@ public class SalaryTemplateWrapper extends Service { List billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(id).salaryBillType(1).build()); Map itemShowNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId, SalaryBillItemNamePO::getSalaryItemShowName); // 获取薪资项目信息 - List salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList, itemIdNameMap); + List salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList); salaryBillItemNameDTOMap = SalaryEntityUtil.convert2Map(salaryBillItemNameDTOS, SalaryBillItemNameDTO::getSalaryItemId); if (CollectionUtils.isNotEmpty(replenishSalaryItemSetting)) { @@ -474,7 +474,7 @@ public class SalaryTemplateWrapper extends Service { Boolean isReplenish = Optional.ofNullable(param.getIsReplenish()) .orElse(false); List salaryItemSet - = getSalaryTemplateService(user).getSalaryItemSetContainHide(param.getSalarySobId(), isReplenish); + = getSalaryTemplateService(user).getSalaryItemSetContainHide(param.getSalarySobId(), param.getSalaryTemplateId(), isReplenish); Long groupId = param.getGroupId(); return salaryItemSet.stream() .filter(s -> Objects.equals(s.getGroupId(), groupId + "")) @@ -496,7 +496,7 @@ public class SalaryTemplateWrapper extends Service { public List getSalaryGroupSet(SalaryBillSalaryGroupQueryParam param) { Boolean isReplenish = Optional.ofNullable(param.getIsReplenish()) .orElse(false); - return getSalaryTemplateService(user).getSalaryItemSetContainHide(param.getSalarySobId(), isReplenish) + return getSalaryTemplateService(user).getSalaryItemSetContainHide(param.getSalarySobId(), param.getSalaryTemplateId(), isReplenish) .stream() .filter(group -> !Optional.ofNullable(param.getExistSalaryGroupIds()).orElse(Collections.emptyList()) .contains(group.getGroupId()) From 2b08efb4837db4ed569592314c90864fbe382670 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Mon, 31 Jul 2023 14:13:07 +0800 Subject: [PATCH 11/13] =?UTF-8?q?=E5=A4=8D=E5=88=B6=E5=B7=A5=E8=B5=84?= =?UTF-8?q?=E5=8D=95=E6=A8=A1=E6=9D=BF=E6=97=B6=E5=90=8C=E6=97=B6=E5=A4=8D?= =?UTF-8?q?=E5=88=B6=E5=B7=A5=E8=B5=84=E5=8D=95=E5=B1=95=E7=A4=BA=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../salarybill/SalaryBillItemNameMapper.java | 11 +++++++++-- .../salarybill/SalaryBillItemNameMapper.xml | 9 +++++++++ .../service/SalaryBillItemNameService.java | 7 +++++++ .../impl/SalaryBillItemNameServiceImpl.java | 8 +++++++- .../impl/SalaryTemplateServiceImpl.java | 18 ++++++++++++++++++ .../salary/wrapper/SalaryTemplateWrapper.java | 16 +++++++++++----- 6 files changed, 61 insertions(+), 8 deletions(-) diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java index 744008c3a..8833c47c6 100644 --- a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.java @@ -3,6 +3,7 @@ package com.engine.salary.mapper.salarybill; import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; import org.apache.ibatis.annotations.Param; +import java.util.Collection; import java.util.List; /** @@ -89,7 +90,13 @@ public interface SalaryBillItemNameMapper { /** * 根据idList删除 - * @param longs + * @param ids */ - void deleteByIds(@Param("collection") List longs); + void deleteByIds(@Param("collection") List ids); + + /** + * 根据模板id删除 + * @param ids + */ + void deleteByTemplateIds(@Param("collection") Collection ids); } diff --git a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml index fc8e2bfbe..d00b52f35 100644 --- a/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml +++ b/src/com/engine/salary/mapper/salarybill/SalaryBillItemNameMapper.xml @@ -330,6 +330,15 @@ #{id} + + UPDATE hrsa_salary_bill_item_name + SET delete_type=1 + WHERE delete_type = 0 + AND salary_template_id IN + + #{id} + + \ No newline at end of file diff --git a/src/com/engine/salary/service/SalaryBillItemNameService.java b/src/com/engine/salary/service/SalaryBillItemNameService.java index e6d217d4c..5399e47f1 100644 --- a/src/com/engine/salary/service/SalaryBillItemNameService.java +++ b/src/com/engine/salary/service/SalaryBillItemNameService.java @@ -3,6 +3,7 @@ package com.engine.salary.service; import com.engine.salary.entity.salaryBill.param.SalaryBillItemNameSaveParam; import com.engine.salary.entity.salaryBill.po.SalaryBillItemNamePO; +import java.util.Collection; import java.util.List; /** @@ -90,4 +91,10 @@ public interface SalaryBillItemNameService { * @param needDeleteIds */ void deleteByIds(List needDeleteIds); + + /** + * 根据工资单模板id删除 + * @param ids + */ + void deleteByTemplateIds(Collection ids); } diff --git a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java index 756af271b..427f28ada 100644 --- a/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryBillItemNameServiceImpl.java @@ -172,5 +172,11 @@ public class SalaryBillItemNameServiceImpl extends Service implements SalaryBill getSalaryBillItemNameMapper().deleteByItemIdsAndTemplateId(salaryItemIds, salaryTemplateId, salaryBillType); } - + @Override + public void deleteByTemplateIds(Collection ids) { + if(CollectionUtils.isEmpty(ids)){ + return; + } + getSalaryBillItemNameMapper().deleteByTemplateIds(ids); + } } diff --git a/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java b/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java index 60788d49a..973391c8f 100644 --- a/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java +++ b/src/com/engine/salary/service/impl/SalaryTemplateServiceImpl.java @@ -27,6 +27,7 @@ import com.engine.salary.util.SalaryEntityUtil; import com.engine.salary.util.page.PageInfo; import com.engine.salary.util.page.SalaryPageUtil; import com.mzlion.core.utils.BeanUtils; +import dm.jdbc.util.IdGenerator; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.math.NumberUtils; @@ -267,6 +268,21 @@ public class SalaryTemplateServiceImpl extends Service implements SalaryTemplate salaryTemplateNew.setName(copyParam.getName()); salaryTemplateNew.setUseType(SalaryTemplateWhetherEnum.FALSE.getValue()); mapper.insert(salaryTemplateNew); + + // 复制工资单自定义名称信息 + List billItemNamePOList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(copyParam.getId()).build()); + if(CollectionUtils.isNotEmpty(billItemNamePOList)){ + Date now = new Date(); + List needInsertList = billItemNamePOList.stream().map(po -> { + SalaryBillItemNamePO newSalaryBillItemNamePO = new SalaryBillItemNamePO(); + BeanUtils.copyProperties(po, newSalaryBillItemNamePO); + newSalaryBillItemNamePO.setId(IdGenerator.generate()); + newSalaryBillItemNamePO.setUpdateTime(now); + newSalaryBillItemNamePO.setSalaryTemplateId(salaryTemplateNew.getId()); + return newSalaryBillItemNamePO; + }).collect(Collectors.toList()); + getSalaryBillItemNameService(user).batchInsert(needInsertList); + } // 记录日志 // SalaryLoggerUtil.recordAddSingleLog(salaryTemplateLoggerTemplate, // salaryTemplateNew.getId(), @@ -289,6 +305,8 @@ public class SalaryTemplateServiceImpl extends Service implements SalaryTemplate } // TODO 正在使用的记录不允许删除 mapper.deleteByIds(ids); + // 删除工资单重命名表 + getSalaryBillItemNameService(user).deleteByTemplateIds(ids); // 记录日志 // salaryTemplates.forEach(e -> SalaryLoggerUtil.recordDeleteSingleLog(salaryTemplateLoggerTemplate, // e.getId(), diff --git a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java index b0e0c9be9..d852f2718 100644 --- a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java @@ -254,11 +254,17 @@ public class SalaryTemplateWrapper extends Service { // Map groupIdNameMap = SalaryEntityUtil.convert2Map(groupPOS, SalarySobItemGroupPO::getId, SalarySobItemGroupPO::getName); // 获取工资单薪资项目展示名信息 - List billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(id).salaryBillType(0).build()); - Map itemShowNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId, SalaryBillItemNamePO::getSalaryItemShowName); - // 获取薪资项目信息 - List salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList); - Map salaryBillItemNameDTOMap = SalaryEntityUtil.convert2Map(salaryBillItemNameDTOS, SalaryBillItemNameDTO::getSalaryItemId); + Map itemShowNameMap; + Map salaryBillItemNameDTOMap = Collections.emptyMap(); + if (id != null){ + List billItemNameList = getSalaryBillItemNameService(user).ListByTemplateAndType(SalaryBillItemNamePO.builder().salaryTemplateId(id).salaryBillType(0).build()); + itemShowNameMap = SalaryEntityUtil.convert2Map(billItemNameList, SalaryBillItemNamePO::getSalaryItemId, SalaryBillItemNamePO::getSalaryItemShowName); + // 获取薪资项目信息 + List salaryBillItemNameDTOS = SalaryBillItemNameBO.convert2ListDTO(billItemNameList); + salaryBillItemNameDTOMap = SalaryEntityUtil.convert2Map(salaryBillItemNameDTOS, SalaryBillItemNameDTO::getSalaryItemId); + } else { + itemShowNameMap = Collections.emptyMap(); + } if (CollectionUtils.isNotEmpty(salaryTemplateShowSetData)) { salaryTemplateShowSetData.stream() From 3827c8963da5a9468b4d869fd7f37e1869459e6a Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Mon, 31 Jul 2023 17:07:21 +0800 Subject: [PATCH 12/13] =?UTF-8?q?fix=E8=A1=A5=E5=8F=91=E6=A8=A1=E6=9D=BF?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/salaryBill/dto/SalaryTemplateShowFormDTO.java | 3 +++ src/com/engine/salary/wrapper/SalaryTemplateWrapper.java | 6 ++++++ 2 files changed, 9 insertions(+) diff --git a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateShowFormDTO.java b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateShowFormDTO.java index 8f3452076..43e52905b 100644 --- a/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateShowFormDTO.java +++ b/src/com/engine/salary/entity/salaryBill/dto/SalaryTemplateShowFormDTO.java @@ -30,6 +30,9 @@ public class SalaryTemplateShowFormDTO { // 薪资项目设置") private List salaryTemplateSalaryItemSet; + // 补发工资薪资项目设置") + private List replenishSalaryTemplateSalaryItemSet; + // 工资单项目名称设置 private Map salaryBillItemNameSet; } diff --git a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java index d852f2718..74f06fac6 100644 --- a/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java +++ b/src/com/engine/salary/wrapper/SalaryTemplateWrapper.java @@ -245,6 +245,11 @@ public class SalaryTemplateWrapper extends Service { if (StringUtils.isNotEmpty(po.getSalaryItemSetting())) { salaryTemplateShowSetData = JsonUtil.parseList(po.getSalaryItemSetting(), SalaryTemplateSalaryItemSetListDTO.class); } + // 补发薪资项目设置,前端保存时需要使用 + List replenishSalaryTemplateSalaryItemSet = new ArrayList<>(); + if (StringUtils.isNotEmpty(po.getReplenishSalaryItemSetting())) { + replenishSalaryTemplateSalaryItemSet = JsonUtil.parseList(po.getReplenishSalaryItemSetting(), SalaryTemplateSalaryItemSetListDTO.class); + } //同步项目名称 List itemPOS = getSalaryItemService(user).listAll(); @@ -291,6 +296,7 @@ public class SalaryTemplateWrapper extends Service { .vars(Arrays.stream(SalaryTemplateVarEnum.values()).map(SalaryTemplateVarEnum::getValue).collect(Collectors.toList())) .salaryTemplateShowSet(salaryTemplateShowSet) .salaryTemplateSalaryItemSet(salaryTemplateShowSetData) + .replenishSalaryTemplateSalaryItemSet(replenishSalaryTemplateSalaryItemSet) .salaryBillItemNameSet(salaryBillItemNameDTOMap) .build(); } From a85e887356688b3fe2f3749fcbf6dea5e6f5bd79 Mon Sep 17 00:00:00 2001 From: Harryxzy Date: Tue, 8 Aug 2023 11:42:24 +0800 Subject: [PATCH 13/13] sql --- resource/sqlupgrade/DM/sql202308080503.sql | 14 ++++++++++++++ resource/sqlupgrade/JC/sql202308080503.sql | 14 ++++++++++++++ resource/sqlupgrade/Mysql/sql202308080503.sql | 12 ++++++++++++ resource/sqlupgrade/Oracle/sql202308080503.sql | 13 +++++++++++++ resource/sqlupgrade/PG/sql202308080503.sql | 12 ++++++++++++ resource/sqlupgrade/SQLServer/sql202308080503.sql | 13 +++++++++++++ 6 files changed, 78 insertions(+) create mode 100644 resource/sqlupgrade/DM/sql202308080503.sql create mode 100644 resource/sqlupgrade/JC/sql202308080503.sql create mode 100644 resource/sqlupgrade/Mysql/sql202308080503.sql create mode 100644 resource/sqlupgrade/Oracle/sql202308080503.sql create mode 100644 resource/sqlupgrade/PG/sql202308080503.sql create mode 100644 resource/sqlupgrade/SQLServer/sql202308080503.sql diff --git a/resource/sqlupgrade/DM/sql202308080503.sql b/resource/sqlupgrade/DM/sql202308080503.sql new file mode 100644 index 000000000..771c36cba --- /dev/null +++ b/resource/sqlupgrade/DM/sql202308080503.sql @@ -0,0 +1,14 @@ +CREATE TABLE hrsa_salary_bill_item_name( + id NUMBER(38,0) PRIMARY KEY NOT NULL, + salary_template_id NUMBER(38,0) NOT NULL, + salary_item_id NUMBER(38,0) NOT NULL, + salary_item_show_name VARCHAR2(255) NOT NULL, + salary_bill_type NUMBER NOT NULL, + create_time DATE DEFAULT sysdate, + update_time DATE DEFAULT sysdate, + creator NUMBER(38,0) NOT NULL, + delete_type NUMBER NOT NULL, + tenant_key VARCHAR2(255) +); +/ + diff --git a/resource/sqlupgrade/JC/sql202308080503.sql b/resource/sqlupgrade/JC/sql202308080503.sql new file mode 100644 index 000000000..771c36cba --- /dev/null +++ b/resource/sqlupgrade/JC/sql202308080503.sql @@ -0,0 +1,14 @@ +CREATE TABLE hrsa_salary_bill_item_name( + id NUMBER(38,0) PRIMARY KEY NOT NULL, + salary_template_id NUMBER(38,0) NOT NULL, + salary_item_id NUMBER(38,0) NOT NULL, + salary_item_show_name VARCHAR2(255) NOT NULL, + salary_bill_type NUMBER NOT NULL, + create_time DATE DEFAULT sysdate, + update_time DATE DEFAULT sysdate, + creator NUMBER(38,0) NOT NULL, + delete_type NUMBER NOT NULL, + tenant_key VARCHAR2(255) +); +/ + diff --git a/resource/sqlupgrade/Mysql/sql202308080503.sql b/resource/sqlupgrade/Mysql/sql202308080503.sql new file mode 100644 index 000000000..8ea1db64c --- /dev/null +++ b/resource/sqlupgrade/Mysql/sql202308080503.sql @@ -0,0 +1,12 @@ +CREATE TABLE hrsa_salary_bill_item_name ( + id bigint PRIMARY KEY, + salary_template_id bigint NOT NULL, + salary_item_id bigint NOT NULL, + salary_item_show_name varchar(255)NOT NULL, + salary_bill_type int NOT NULL, + creator bigint NOT NULL, + create_time datetime NOT NULL , + update_time datetime NOT NULL, + delete_type int NOT NULL, + tenant_key varchar(10) NOT NULL +) ; diff --git a/resource/sqlupgrade/Oracle/sql202308080503.sql b/resource/sqlupgrade/Oracle/sql202308080503.sql new file mode 100644 index 000000000..6ac9927fd --- /dev/null +++ b/resource/sqlupgrade/Oracle/sql202308080503.sql @@ -0,0 +1,13 @@ +CREATE TABLE hrsa_salary_bill_item_name( + id NUMBER(38,0) PRIMARY KEY NOT NULL, + salary_template_id NUMBER(38,0) NOT NULL, + salary_item_id NUMBER(38,0) NOT NULL, + salary_item_show_name VARCHAR2(255) NOT NULL, + salary_bill_type NUMBER NOT NULL, + create_time DATE DEFAULT sysdate, + update_time DATE DEFAULT sysdate, + creator NUMBER(38,0) NOT NULL, + delete_type NUMBER NOT NULL, + tenant_key VARCHAR2(255) +) +/ \ No newline at end of file diff --git a/resource/sqlupgrade/PG/sql202308080503.sql b/resource/sqlupgrade/PG/sql202308080503.sql new file mode 100644 index 000000000..ded2d46b0 --- /dev/null +++ b/resource/sqlupgrade/PG/sql202308080503.sql @@ -0,0 +1,12 @@ +CREATE TABLE hrsa_salary_bill_item_name ( + id bigint PRIMARY KEY, + salary_template_id bigint NOT NULL, + salary_item_id bigint NOT NULL, + salary_item_show_name varchar(255)NOT NULL, + salary_bill_type int NOT NULL, + creator bigint NOT NULL, + create_time TIMESTAMP NOT NULL , + update_time TIMESTAMP NOT NULL, + delete_type int NOT NULL, + tenant_key varchar(10) NOT NULL +) ; \ No newline at end of file diff --git a/resource/sqlupgrade/SQLServer/sql202308080503.sql b/resource/sqlupgrade/SQLServer/sql202308080503.sql new file mode 100644 index 000000000..063d85a76 --- /dev/null +++ b/resource/sqlupgrade/SQLServer/sql202308080503.sql @@ -0,0 +1,13 @@ +CREATE TABLE hrsa_salary_bill_item_name ( + id bigint PRIMARY KEY, + salary_template_id bigint NOT NULL, + salary_item_id bigint NOT NULL, + salary_item_show_name varchar(255)NOT NULL, + salary_bill_type int NOT NULL, + creator bigint NOT NULL, + create_time datetime NOT NULL , + update_time datetime NOT NULL, + delete_type int NOT NULL, + tenant_key varchar(10) NOT NULL +) +GO \ No newline at end of file