Merge remote-tracking branch 'remotes/origin/fix/salaryExportBug-0706' into release/2.9.1.2307.01
This commit is contained in:
commit
a55ca5182e
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -50,6 +50,8 @@ public class SalaryAcctEmployeeQueryParam extends BaseQueryParam {
|
|||
*/
|
||||
|
||||
private SalaryEmployeeStatusEnum status;
|
||||
//状态(多选)
|
||||
private List<String> statuses;
|
||||
|
||||
//离职日期")
|
||||
private LocalDateRange dismissDate;
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ import lombok.Data;
|
|||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 薪资核算结果查询参数
|
||||
|
|
@ -46,6 +47,8 @@ public class SalaryAcctResultQueryParam extends BaseQueryParam {
|
|||
|
||||
//状态
|
||||
private SalaryEmployeeStatusEnum status;
|
||||
//状态(多选)
|
||||
private List<String> statuses;
|
||||
|
||||
//离职日期
|
||||
private LocalDateRange dismissDate;
|
||||
|
|
|
|||
|
|
@ -48,6 +48,8 @@ public class SalaryArchiveQueryParam extends BaseQueryParam {
|
|||
|
||||
//状态
|
||||
private String userstatus;
|
||||
//状态(多选)
|
||||
private List<String> statuses;
|
||||
|
||||
//入职日期
|
||||
private List<String> hiredate;
|
||||
|
|
|
|||
|
|
@ -38,6 +38,7 @@ public class InsuranceArchivesListParam extends BaseQueryParam {
|
|||
|
||||
//状态(多线)")
|
||||
private List<String> statuses;
|
||||
private String statusesStr;
|
||||
|
||||
//岗位(多选)")
|
||||
private List<BigDecimal> positions;
|
||||
|
|
|
|||
|
|
@ -154,6 +154,12 @@
|
|||
<if test="param.userstatus != null and param.userstatus != ''">
|
||||
AND e.status = #{param.userstatus}
|
||||
</if>
|
||||
<if test="param.statuses != null and param.statuses.size()>0">
|
||||
AND e.status IN
|
||||
<foreach collection="param.statuses" open="(" item="userstatus" separator="," close=")">
|
||||
#{userstatus}
|
||||
</foreach>
|
||||
</if>
|
||||
<!-- 入职日期 -->
|
||||
<if test="param.hiredate != null and param.hiredate.size() == 2">
|
||||
AND (e.companystartdate BETWEEN #{param.hiredate[0]} AND #{param.hiredate[1]})
|
||||
|
|
@ -229,7 +235,12 @@
|
|||
<if test="param.userstatus != null and param.userstatus != ''">
|
||||
AND e.status = #{param.userstatus}
|
||||
</if>
|
||||
|
||||
<if test="param.statuses != null and param.statuses.size()>0">
|
||||
AND e.status IN
|
||||
<foreach collection="param.statuses" open="(" item="userstatus" separator="," close=")">
|
||||
#{userstatus}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="param.hiredate != null and param.hiredate.size() == 2">
|
||||
AND (e.companystartdate BETWEEN #{param.hiredate[0]} AND #{param.hiredate[1]})
|
||||
</if>
|
||||
|
|
@ -305,7 +316,12 @@
|
|||
<if test="param.userstatus != null and param.userstatus != ''">
|
||||
AND e.status = #{param.userstatus}
|
||||
</if>
|
||||
|
||||
<if test="param.statuses != null and param.statuses.size()>0">
|
||||
AND e.status IN
|
||||
<foreach collection="param.statuses" open="(" item="userstatus" separator="," close=")">
|
||||
#{userstatus}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="param.hiredate != null and param.hiredate.size() == 2">
|
||||
AND (e.companystartdate BETWEEN #{param.hiredate[0]} AND #{param.hiredate[1]})
|
||||
</if>
|
||||
|
|
|
|||
|
|
@ -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
|
||||
(
|
||||
|
|
@ -528,6 +529,12 @@
|
|||
#{positionId}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="param.statuses != null and param.statuses.size()>0">
|
||||
AND em.status IN
|
||||
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
|
||||
#{userStatus}
|
||||
</foreach>
|
||||
</if>
|
||||
-- 在职
|
||||
<if test="param.status != null and param.status.toString == 'NORMAL'">
|
||||
AND em.status in (0,1,2,3)
|
||||
|
|
@ -581,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
|
||||
(
|
||||
|
|
@ -611,6 +619,12 @@
|
|||
#{positionId}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="param.statuses != null and param.statuses.size()>0">
|
||||
AND em.status IN
|
||||
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
|
||||
#{userStatus}
|
||||
</foreach>
|
||||
</if>
|
||||
-- 在职
|
||||
<if test="param.status != null and param.status.toString == 'NORMAL'">
|
||||
AND em.status in (0,1,2,3)
|
||||
|
|
@ -664,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
|
||||
(
|
||||
|
|
@ -694,6 +709,12 @@
|
|||
#{positionId}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="param.statuses != null and param.statuses.size()>0">
|
||||
AND em.status IN
|
||||
<foreach collection="param.statuses" open="(" item="userStatus" separator="," close=")">
|
||||
#{userStatus}
|
||||
</foreach>
|
||||
</if>
|
||||
-- 在职
|
||||
<if test="param.status != null and param.status.toString == 'NORMAL'">
|
||||
AND em.status in (0,1,2,3)
|
||||
|
|
|
|||
|
|
@ -540,7 +540,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;
|
||||
|
|
|
|||
|
|
@ -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());
|
||||
|
|
|
|||
|
|
@ -21,6 +21,7 @@ import com.engine.salary.wrapper.SISchemeWrapper;
|
|||
import io.swagger.v3.oas.annotations.parameters.RequestBody;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import weaver.hrm.HrmUserVarify;
|
||||
import weaver.hrm.User;
|
||||
|
||||
|
|
@ -32,6 +33,7 @@ import javax.ws.rs.core.MediaType;
|
|||
import javax.ws.rs.core.Response;
|
||||
import javax.ws.rs.core.StreamingOutput;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.math.BigDecimal;
|
||||
import java.net.URLEncoder;
|
||||
import java.time.LocalDate;
|
||||
import java.util.Arrays;
|
||||
|
|
@ -172,16 +174,7 @@ public class SISchemeController {
|
|||
@Path("/export")
|
||||
@Produces(MediaType.APPLICATION_OCTET_STREAM)
|
||||
public Response export(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
InsuranceArchivesListParam param = new InsuranceArchivesListParam();
|
||||
String ids = request.getParameter("ids");
|
||||
if(StringUtils.isNotBlank(ids)){
|
||||
param.setIds( Arrays.stream(ids.split(",")).map(Long::valueOf).collect(Collectors.toList()));
|
||||
}
|
||||
|
||||
String runStatuses = request.getParameter("runStatuses");
|
||||
if(StringUtils.isNotBlank(runStatuses)){
|
||||
param.setRunStatuses( Arrays.stream(runStatuses.split(",")).map(String::valueOf).collect(Collectors.toList()));
|
||||
}
|
||||
InsuranceArchivesListParam param = buildInsuranceArchivesListParam(request);
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
XSSFWorkbook workbook = getService(user).export(param);
|
||||
String fileName ;
|
||||
|
|
@ -298,6 +291,63 @@ public class SISchemeController {
|
|||
.header("Cache-Control", "no-cache").build();
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private InsuranceArchivesListParam buildInsuranceArchivesListParam(HttpServletRequest request) {
|
||||
InsuranceArchivesListParam param = new InsuranceArchivesListParam();
|
||||
|
||||
String ids = request.getParameter("ids");
|
||||
if(StringUtils.isNotBlank(ids)){
|
||||
param.setIds( Arrays.stream(ids.split(",")).map(Long::valueOf).collect(Collectors.toList()));
|
||||
}
|
||||
|
||||
String runStatuses = request.getParameter("runStatuses");
|
||||
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()));
|
||||
}
|
||||
String userName = request.getParameter("username");
|
||||
if (StringUtils.isNotBlank(userName)) {
|
||||
param.setUserName(userName);
|
||||
}
|
||||
String jobNum = request.getParameter("jobNum");
|
||||
if (StringUtils.isNotBlank(jobNum)) {
|
||||
param.setJobNum(jobNum);
|
||||
}
|
||||
String taxAgentId = request.getParameter("taxAgentId");
|
||||
if (StringUtils.isNotBlank(taxAgentId)) {
|
||||
param.setTaxAgentId(Long.parseLong(taxAgentId));
|
||||
}
|
||||
String departmentIds = request.getParameter("departmentIdsStr");
|
||||
if (StringUtils.isNotBlank(departmentIds)) {
|
||||
param.setDepartmentIds(Arrays.stream(departmentIds.split(",")).map(BigDecimal::new).collect(Collectors.toList()));
|
||||
}
|
||||
String subcompanyIds = request.getParameter("subcompanyIdsStr");
|
||||
if (StringUtils.isNotBlank(subcompanyIds)) {
|
||||
param.setSubcompanyIds(Arrays.stream(subcompanyIds.split(",")).map(BigDecimal::new).collect(Collectors.toList()));
|
||||
}
|
||||
String positions = request.getParameter("positionsStr");
|
||||
if (StringUtils.isNotBlank(positions)) {
|
||||
param.setPositions(Arrays.stream(positions.split(",")).map(BigDecimal::new).collect(Collectors.toList()));
|
||||
}
|
||||
String siSchemeId = request.getParameter("siSchemeId");
|
||||
if (StringUtils.isNotBlank(siSchemeId)) {
|
||||
param.setSiSchemeId(Long.valueOf(siSchemeId));
|
||||
}
|
||||
String fundSchemeId = request.getParameter("fundSchemeId");
|
||||
if (StringUtils.isNotBlank(fundSchemeId)) {
|
||||
param.setFundSchemeId(Long.valueOf(fundSchemeId));
|
||||
}
|
||||
String otherSchemeId = request.getParameter("otherSchemeId");
|
||||
if (StringUtils.isNotBlank(otherSchemeId)) {
|
||||
param.setOtherSchemeId(Long.valueOf(otherSchemeId));
|
||||
}
|
||||
return param;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -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");
|
||||
|
|
@ -709,6 +713,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 consolidatedTaxation = request.getParameter("consolidatedTaxation");
|
||||
|
|
|
|||
|
|
@ -472,6 +472,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(",")));
|
||||
|
|
|
|||
Loading…
Reference in New Issue