diff --git a/src/com/engine/salary/biz/SIArchivesBiz.java b/src/com/engine/salary/biz/SIArchivesBiz.java index dac9c3f20..51da1aa57 100644 --- a/src/com/engine/salary/biz/SIArchivesBiz.java +++ b/src/com/engine/salary/biz/SIArchivesBiz.java @@ -928,6 +928,10 @@ public class SIArchivesBiz { request.setPositions(Arrays.stream(param.getPositionsStr().split(",")).map(BigDecimal::new).collect(Collectors.toList())); } + if (StringUtils.isNotBlank(param.getStatusesStr())) { + request.setStatuses(Arrays.stream(param.getStatusesStr().split(",")).map(String::new).collect(Collectors.toList())); + } + request.setNeedAuth(param.getNeedAuth()); request.setTaxAgentEmployeeIds(param.getTaxAgentEmployeeIds()); request.setTaxAgentIds(param.getTaxAgentIds()); @@ -937,7 +941,7 @@ public class SIArchivesBiz { long startNum = (current - 1) * pageSize; param.setStartNum(startNum); param.setPageSize(pageSize); - request.setStatuses(param.getStatuses()); +// request.setStatuses(param.getStatuses()); request.setKeyword(param.getUserName()); request.setSiSchemeId(param.getSiSchemeId()); @@ -1393,8 +1397,9 @@ public class SIArchivesBiz { conditionItems.add(departmentIds); - SearchConditionItem statuses = conditionFactory.createCondition(ConditionType.SELECT, 502327, "statuses"); + SearchConditionItem statuses = conditionFactory.createCondition(ConditionType.SELECT, 502327, "statusesStr"); statuses.setInputType("select"); + statuses.setMultiple(true); statuses.setOptions(userStatusOptions); statuses.setColSpan(2); statuses.setFieldcol(16); diff --git a/src/com/engine/salary/entity/siarchives/param/InsuranceArchivesListParam.java b/src/com/engine/salary/entity/siarchives/param/InsuranceArchivesListParam.java index ad05e9702..276fd82b3 100644 --- a/src/com/engine/salary/entity/siarchives/param/InsuranceArchivesListParam.java +++ b/src/com/engine/salary/entity/siarchives/param/InsuranceArchivesListParam.java @@ -38,6 +38,7 @@ public class InsuranceArchivesListParam extends BaseQueryParam { //状态(多线)") private List statuses; + private String statusesStr; //岗位(多选)") private List positions; diff --git a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml index cc03c82f0..2ae1e016f 100644 --- a/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml +++ b/src/com/engine/salary/mapper/archive/SalaryArchiveMapper.xml @@ -154,6 +154,12 @@ AND e.status = #{param.userstatus} + + AND e.status IN + + #{userstatus} + + AND (e.companystartdate BETWEEN #{param.hiredate[0]} AND #{param.hiredate[1]}) @@ -229,7 +235,12 @@ AND e.status = #{param.userstatus} - + + AND e.status IN + + #{userstatus} + + AND (e.companystartdate BETWEEN #{param.hiredate[0]} AND #{param.hiredate[1]}) @@ -305,7 +316,12 @@ AND e.status = #{param.userstatus} - + + AND e.status IN + + #{userstatus} + + AND (e.companystartdate BETWEEN #{param.hiredate[0]} AND #{param.hiredate[1]}) diff --git a/src/com/engine/salary/mapper/salaryacct/SalaryAcctEmployeeMapper.xml b/src/com/engine/salary/mapper/salaryacct/SalaryAcctEmployeeMapper.xml index ea8fac029..c4a31854d 100644 --- a/src/com/engine/salary/mapper/salaryacct/SalaryAcctEmployeeMapper.xml +++ b/src/com/engine/salary/mapper/salaryacct/SalaryAcctEmployeeMapper.xml @@ -497,6 +497,7 @@ or (param.subcompanyIds != null and param.subcompanyIds.size()>0) or (param.departmentIds != null and param.departmentIds.size()>0) or (param.positionIds != null and param.positionIds.size()>0) + or (param.statuses != null and param.statuses.size()>0) or (param.status != null and param.status.toString != 'ALL')"> AND t.employee_id IN ( @@ -587,7 +588,8 @@ or (param.workcode != null and param.workcode != '') or (param.subcompanyIds != null and param.subcompanyIds.size()>0) or (param.departmentIds != null and param.departmentIds.size()>0) - or (param.positionIds != null and param.positionIds.size()>0) + or (param.positionIds != null and param.positionIds.size()>0) + or (param.statuses != null and param.statuses.size()>0) or (param.status != null and param.status.toString != 'ALL')"> AND t.employee_id IN ( @@ -676,7 +678,8 @@ or (param.workcode != null and param.workcode != '') or (param.subcompanyIds != null and param.subcompanyIds.size()>0) or (param.departmentIds != null and param.departmentIds.size()>0) - or (param.positionIds != null and param.positionIds.size()>0) + or (param.positionIds != null and param.positionIds.size()>0) + or (param.statuses != null and param.statuses.size()>0) or (param.status != null and param.status.toString != 'ALL')"> AND t.employee_id IN ( diff --git a/src/com/engine/salary/service/impl/SIArchivesServiceImpl.java b/src/com/engine/salary/service/impl/SIArchivesServiceImpl.java index fb00653d7..b2db613e3 100644 --- a/src/com/engine/salary/service/impl/SIArchivesServiceImpl.java +++ b/src/com/engine/salary/service/impl/SIArchivesServiceImpl.java @@ -488,7 +488,10 @@ public class SIArchivesServiceImpl extends Service implements SIArchivesService param.setDimissionDateEnd(param.getDimissionDate()[1]); } if (Objects.equals("fromQuickSearch", param.getDataSource())) { - request.setStatuses(param.getStatuses()); +// request.setStatuses(param.getStatuses()); + if (StringUtils.isNotBlank(param.getStatusesStr())) { + request.setStatuses(Arrays.stream(param.getStatusesStr().split(",")).map(String::new).collect(Collectors.toList())); + } request.setKeyword(param.getUserName()); } else { request = param; diff --git a/src/com/engine/salary/service/impl/SIImportServiceImpl.java b/src/com/engine/salary/service/impl/SIImportServiceImpl.java index ae235c3fc..ecd8f016a 100644 --- a/src/com/engine/salary/service/impl/SIImportServiceImpl.java +++ b/src/com/engine/salary/service/impl/SIImportServiceImpl.java @@ -31,6 +31,7 @@ import com.engine.salary.util.page.PageInfo; import com.engine.salary.util.page.SalaryPageUtil; import com.google.common.collect.Lists; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang.StringUtils; import org.apache.ibatis.session.SqlSession; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import weaver.conn.mybatis.MyBatisFactory; @@ -103,7 +104,9 @@ public class SIImportServiceImpl extends Service implements SIImportService { param.setDimissionDateEnd(param.getDimissionDate()[1]); } if (Objects.equals("fromQuickSearch", param.getDataSource())) { - request.setStatuses(param.getStatuses()); + if (StringUtils.isNotBlank(param.getStatusesStr())) { + request.setStatuses(Arrays.stream(param.getStatusesStr().split(",")).map(String::new).collect(Collectors.toList())); + } request.setKeyword(param.getUserName()); request.setStartNum(param.getStartNum()); request.setPageSize(param.getPageSize()); diff --git a/src/com/engine/salary/web/SISchemeController.java b/src/com/engine/salary/web/SISchemeController.java index 4270508d1..9f16e9604 100644 --- a/src/com/engine/salary/web/SISchemeController.java +++ b/src/com/engine/salary/web/SISchemeController.java @@ -182,6 +182,12 @@ public class SISchemeController { if(StringUtils.isNotBlank(runStatuses)){ param.setRunStatuses( Arrays.stream(runStatuses.split(",")).map(String::valueOf).collect(Collectors.toList())); } + + String statusesStr = request.getParameter("statusesStr"); + if (StringUtils.isNotBlank(statusesStr)) { + param.setStatuses(Arrays.stream(statusesStr.split(",")).map(String::new).collect(Collectors.toList())); + } + User user = HrmUserVarify.getUser(request, response); XSSFWorkbook workbook = getService(user).export(param); String fileName ; diff --git a/src/com/engine/salary/web/SalaryAcctController.java b/src/com/engine/salary/web/SalaryAcctController.java index d66893e72..c5990e729 100644 --- a/src/com/engine/salary/web/SalaryAcctController.java +++ b/src/com/engine/salary/web/SalaryAcctController.java @@ -297,6 +297,10 @@ public class SalaryAcctController { if (StringUtils.isNotBlank(status)) { param.setStatus(SalaryEmployeeStatusEnum.parseByValue(Integer.parseInt(status))); } + String statuses = request.getParameter("statuses"); + if (StringUtils.isNotBlank(statuses)) { + param.setStatuses(Arrays.stream(statuses.split(",")).map(String::valueOf).collect(Collectors.toList())); + } //fixme 日期 request.getParameter("dismissDate"); String ids = request.getParameter("ids"); diff --git a/src/com/engine/salary/web/SalaryArchiveController.java b/src/com/engine/salary/web/SalaryArchiveController.java index 28e773578..af9aad165 100644 --- a/src/com/engine/salary/web/SalaryArchiveController.java +++ b/src/com/engine/salary/web/SalaryArchiveController.java @@ -458,6 +458,10 @@ public class SalaryArchiveController { if (StringUtils.isNotBlank(userstatus)) { param.setUserstatus(userstatus); } + String statuses = request.getParameter("statuses"); + if (StringUtils.isNotBlank(statuses)) { + param.setStatuses(Arrays.stream(statuses.split(",")).map(String::valueOf).collect(Collectors.toList())); + } String hiredate = request.getParameter("hiredate"); if (StringUtils.isNotBlank(hiredate)) { param.setHiredate(Arrays.asList(hiredate.split(",")));