From bf75c3831f3bd247ef2de7628aa3f93174e14c58 Mon Sep 17 00:00:00 2001 From: fcli Date: Wed, 9 Nov 2022 15:39:00 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=B8=80=E9=94=AE=E7=B4=AF=E8=AE=A1?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=97=A5=E6=9C=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../param/AddDeductionAutoAddParam.java | 17 ++++++++++++++ .../salary/service/AddUpDeductionService.java | 2 +- .../impl/AddUpDeductionServiceImpl.java | 10 ++++---- .../salary/web/AddUpDeductionController.java | 23 ++++++++++++++----- .../salary/wrapper/AddUpDeductionWrapper.java | 10 ++++---- 5 files changed, 46 insertions(+), 16 deletions(-) create mode 100644 src/com/engine/salary/entity/datacollection/param/AddDeductionAutoAddParam.java diff --git a/src/com/engine/salary/entity/datacollection/param/AddDeductionAutoAddParam.java b/src/com/engine/salary/entity/datacollection/param/AddDeductionAutoAddParam.java new file mode 100644 index 000000000..ba14a6f02 --- /dev/null +++ b/src/com/engine/salary/entity/datacollection/param/AddDeductionAutoAddParam.java @@ -0,0 +1,17 @@ +package com.engine.salary.entity.datacollection.param; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @description 数据采集-专项附加扣除一键累计参数 + **/ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class AddDeductionAutoAddParam { + String yearMonth = ""; +} diff --git a/src/com/engine/salary/service/AddUpDeductionService.java b/src/com/engine/salary/service/AddUpDeductionService.java index 523495ba5..4876bf723 100644 --- a/src/com/engine/salary/service/AddUpDeductionService.java +++ b/src/com/engine/salary/service/AddUpDeductionService.java @@ -154,5 +154,5 @@ public interface AddUpDeductionService { * @return void * @author lfc */ - void autoAddAll(Date operateTime); + void autoAddAll(Date yearMonth); } diff --git a/src/com/engine/salary/service/impl/AddUpDeductionServiceImpl.java b/src/com/engine/salary/service/impl/AddUpDeductionServiceImpl.java index b29cf4b8e..51f7398ce 100644 --- a/src/com/engine/salary/service/impl/AddUpDeductionServiceImpl.java +++ b/src/com/engine/salary/service/impl/AddUpDeductionServiceImpl.java @@ -641,7 +641,7 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction } @Override - public void autoAddAll(Date operateTime) { + public void autoAddAll(Date yearMonth) { int uid = user.getUID(); Boolean isChief = getTaxAgentService(user).isChief((long) uid); Collection taxAgents; @@ -677,7 +677,7 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction addUpDeduction.setEmployeeId(employeeId); addUpDeduction.setTaxAgentId(taxAgent.getId()); - addUpDeduction.setDeclareMonth(DateUtil.beginOfMonth(operateTime)); + addUpDeduction.setDeclareMonth(DateUtil.beginOfMonth(yearMonth)); addUpDeduction.setCreator((long) user.getUID()); addUpDeduction.setTenantKey(DEFAULT_TENANT_KEY); @@ -686,13 +686,13 @@ public class AddUpDeductionServiceImpl extends Service implements AddUpDeduction .flatMap(c -> c.stream().findFirst()) .orElse(null); if (oldInfo == null) { - addUpDeduction.setCreateTime(operateTime); - addUpDeduction.setUpdateTime(operateTime); + addUpDeduction.setCreateTime(yearMonth); + addUpDeduction.setUpdateTime(yearMonth); insertList.add(AddUpDeductionEncrypt.encryptAddUpDeduction(addUpDeduction)); } else { addUpDeduction.setId(oldInfo.getId()); addUpDeduction.setCreateTime(oldInfo.getCreateTime()); - addUpDeduction.setUpdateTime(operateTime); + addUpDeduction.setUpdateTime(yearMonth); updateList.add(AddUpDeductionEncrypt.encryptAddUpDeduction(addUpDeduction)); } }); diff --git a/src/com/engine/salary/web/AddUpDeductionController.java b/src/com/engine/salary/web/AddUpDeductionController.java index d97aaaed3..6cda46630 100644 --- a/src/com/engine/salary/web/AddUpDeductionController.java +++ b/src/com/engine/salary/web/AddUpDeductionController.java @@ -1,13 +1,13 @@ package com.engine.salary.web; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; import com.engine.common.util.ParamUtil; import com.engine.common.util.ServiceUtil; import com.engine.salary.entity.datacollection.dto.AddUpDeductionDTO; import com.engine.salary.entity.datacollection.dto.AddUpDeductionRecordDTO; -import com.engine.salary.entity.datacollection.param.AddUpDeductionImportParam; -import com.engine.salary.entity.datacollection.param.AddUpDeductionQueryParam; -import com.engine.salary.entity.datacollection.param.AddUpDeductionRecordDeleteParam; -import com.engine.salary.entity.datacollection.param.AddUpDeductionRecordParam; +import com.engine.salary.entity.datacollection.param.*; import com.engine.salary.util.ResponseResult; import com.engine.salary.util.page.PageInfo; import com.engine.salary.wrapper.AddUpDeductionWrapper; @@ -347,8 +347,19 @@ public class AddUpDeductionController { @POST @Path("/autoAddAll") @Produces(MediaType.APPLICATION_JSON) - public String autoAddAll(@Context HttpServletRequest request, @Context HttpServletResponse response) { + public String autoAddAll(@Context HttpServletRequest request, @Context HttpServletResponse response, + @RequestBody AddDeductionAutoAddParam param) { + DateTime date = null; + if (StrUtil.isNotEmpty(param.getYearMonth())) { + try { + date = DateUtil.parse(param.getYearMonth(), "yyyy-MM"); + } catch (Exception e) { + //ignore 放在service中处理,这里处理了页面上收不到 + } + } else { + date = DateUtil.beginOfMonth(new Date()); + } User user = HrmUserVarify.getUser(request, response); - return new ResponseResult(user).run(getAddUpDeductionWrapper(user)::autoAddAll, user); + return new ResponseResult(user).run(getAddUpDeductionWrapper(user)::autoAddAll, date); } } diff --git a/src/com/engine/salary/wrapper/AddUpDeductionWrapper.java b/src/com/engine/salary/wrapper/AddUpDeductionWrapper.java index b0f57c860..162291cb1 100644 --- a/src/com/engine/salary/wrapper/AddUpDeductionWrapper.java +++ b/src/com/engine/salary/wrapper/AddUpDeductionWrapper.java @@ -25,7 +25,6 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook; import weaver.general.BaseBean; import weaver.hrm.User; -import java.time.LocalDateTime; import java.util.Date; import java.util.List; import java.util.Map; @@ -171,10 +170,13 @@ public class AddUpDeductionWrapper extends Service { return getAddUpDeductionService(user).getAddUpDeduction(param); } - public void autoAddAll(User opt) { + public void autoAddAll(Date yearMonth) { if (isLog) { - log.info("一键累计, 操作人 「{}」", opt.getUsername()); + log.info("一键累计, 操作人 「{}」", user.getUsername()); } - getAddUpDeductionService(user).autoAddAll(new Date()); + if (yearMonth == null) { + throw new SalaryRunTimeException("一键累计传入日期格式错误"); + } + getAddUpDeductionService(user).autoAddAll(yearMonth); } }