薪酬系统-福利档案,高级搜索功能支持根据个税扣缴义务人检索

This commit is contained in:
sy 2023-01-03 17:58:14 +08:00
parent 17e6e9d934
commit f53d788583
3 changed files with 32 additions and 0 deletions

View File

@ -12,6 +12,7 @@ import com.cloudstore.eccom.pc.table.WeaTable;
import com.cloudstore.eccom.pc.table.WeaTableCheckboxpopedom;
import com.cloudstore.eccom.pc.table.WeaTableColumn;
import com.cloudstore.eccom.result.WeaResultMsg;
import com.engine.common.util.ServiceUtil;
import com.engine.salary.constant.SalaryDefaultTenantConstant;
import com.engine.salary.encrypt.AESEncryptUtil;
import com.engine.salary.encrypt.EncryptUtil;
@ -45,6 +46,7 @@ import com.engine.salary.util.SalaryFormItemUtil;
import com.engine.salary.util.db.MapperProxyFactory;
import com.engine.salary.util.page.PageInfo;
import com.engine.salary.util.page.SalaryPageUtil;
import com.engine.salary.wrapper.TaxAgentWrapper;
import com.google.common.collect.Lists;
import dm.jdbc.util.IdGenerator;
import lombok.Data;
@ -104,6 +106,10 @@ public class SIArchivesBiz {
return MapperProxyFactory.getProxy(OtherSchemeMapper.class);
}
private TaxAgentWrapper getTaxAgentWrapper(User user) {
return ServiceUtil.getService(TaxAgentWrapper.class, user);
}
/**
* @param welfareType
* @param employeeId
@ -917,6 +923,8 @@ public class SIArchivesBiz {
request.setRunStatuses(param.getRunStatuses());
request.setTaxAgentId(param.getTaxAgentId());
apidatas = listPageEmployeePOS(request, operateId);
return apidatas;
@ -1294,6 +1302,9 @@ public class SIArchivesBiz {
.collect(Collectors.toList())
.stream().map(item -> new SearchConditionOption(item.getId().toString(), item.getSchemeName())).collect(Collectors.toList());
List<Map<String, Object>> taxAgentList = getTaxAgentWrapper(user).selectListAsAdmin();
List<SearchConditionOption> taxAgentOption = taxAgentList.stream().map(item -> new SearchConditionOption(item.get("id").toString(), item.get("content").toString())).collect(Collectors.toList());
Map<String, Object> apidatas = new HashMap<String, Object>();
ConditionFactory conditionFactory = new ConditionFactory(user);
@ -1412,6 +1423,16 @@ public class SIArchivesBiz {
otherSchemeId.setLabel("其它福利方案");
conditionItems.add(otherSchemeId);
SearchConditionItem taxAgentId = conditionFactory.createCondition(ConditionType.SELECT, 502327, "taxAgentId");
taxAgentId.setInputType("select");
taxAgentId.setOptions(taxAgentOption);
taxAgentId.setColSpan(2);
taxAgentId.setFieldcol(16);
taxAgentId.setLabelcol(8);
taxAgentId.setIsQuickSearch(true);
taxAgentId.setLabel("个税扣缴义务人");
conditionItems.add(taxAgentId);
addGroups.add(new SearchConditionGroup("常用条件", true, conditionItems));
apidatas.put("condition", addGroups);
return apidatas;

View File

@ -105,6 +105,8 @@ public class InsuranceArchivesListParam extends BaseQueryParam {
private Collection<Long> taxAgentEmployeeIds;
//个税扣缴义务人
private Collection<Long> taxAgentIds;
//个税扣缴义务人id
private Long taxAgentId;
//福利执行状态
private List<String> runStatuses;

View File

@ -421,6 +421,9 @@
<if test="param.otherSchemeId != null and param.otherSchemeId != 0">
AND otherSchemeId = #{param.otherSchemeId}
</if>
<if test="param.taxAgentId != null and param.taxAgentId != 0">
AND base.payment_organization = #{param.taxAgentId}
</if>
<if test="param.runStatuses != null and param.runStatuses.size()>0">
AND base.run_status IN
<foreach collection="param.runStatuses" open="(" item="runStatus" separator="," close=")">
@ -501,6 +504,9 @@
<if test="param.otherSchemeId != null and param.otherSchemeId != 0">
AND otherSchemeId = #{param.otherSchemeId}
</if>
<if test="param.taxAgentId != null and param.taxAgentId != 0">
AND base.payment_organization = #{param.taxAgentId}
</if>
<if test="param.runStatuses != null and param.runStatuses.size()>0">
AND base.run_status IN
<foreach collection="param.runStatuses" open="(" item="runStatus" separator="," close=")">
@ -580,6 +586,9 @@
<if test="param.otherSchemeId != null and param.otherSchemeId != 0">
AND otherSchemeId = #{param.otherSchemeId}
</if>
<if test="param.taxAgentId != null and param.taxAgentId != 0">
AND base.payment_organization = #{param.taxAgentId}
</if>
<if test="param.runStatuses != null and param.runStatuses.size()>0">
AND base.run_status IN
<foreach collection="param.runStatuses" open="(" item="runStatus" separator="," close=")">