Commit c37daf4d authored by hongguangwu's avatar hongguangwu

MVP1.7.10-新菜单:自动化办理查询-导出

parent 48430283
...@@ -34,6 +34,7 @@ public class DispatchConstants { ...@@ -34,6 +34,7 @@ public class DispatchConstants {
public static final String DISPATCH_SOCIAL_REDUCE = "社保派减"; public static final String DISPATCH_SOCIAL_REDUCE = "社保派减";
public static final String SOCIAL_RECORD_ROSTER_EXPORT = "社保花名册导出"; public static final String SOCIAL_RECORD_ROSTER_EXPORT = "社保花名册导出";
public static final String SOCIAL_SOLDIER_EXPORT = "自动化办理导出"; public static final String SOCIAL_SOLDIER_EXPORT = "自动化办理导出";
public static final String SOCIAL_SOLDIER_EXPORT_ALL = "自动化办理查询导出";
public static final String SOCIAL_RECORD_EXPORT = "公积金变更清册导出"; public static final String SOCIAL_RECORD_EXPORT = "公积金变更清册导出";
public static final String SOCIAL_MEDICAL_EXPORT = "社保-医疗"; public static final String SOCIAL_MEDICAL_EXPORT = "社保-医疗";
public static final String SOCIAL_PERSION_EXPORT = "社保-养老三险"; public static final String SOCIAL_PERSION_EXPORT = "社保-养老三险";
......
...@@ -644,6 +644,27 @@ public class TDispatchInfoController { ...@@ -644,6 +644,27 @@ public class TDispatchInfoController {
tDispatchInfoService.doExportSocialSoldier(response,searchVo,searchVo.getIdStr(),null); tDispatchInfoService.doExportSocialSoldier(response,searchVo,searchVo.getIdStr(),null);
} }
/**
* @Author hgw
* @Description 自动化办理查询导出
* @Date 2025-4-25 18:23:59
* @Param
**/
@PostMapping("/doExportSocialSoldierAll")
@Operation(description = "自动化办理查询导出")
@SysLog("自动化办理查询导出")
public void doExportSocialSoldierAll(HttpServletResponse response, HttpServletRequest request,
@RequestBody SocialHandleSearchVo searchVo) {
searchVo.setDeleteFlag(CommonConstants.ZERO_STRING);
YifuUser user = SecurityUtils.getUser();
menuUtil.setAuthSql(user, searchVo);
if (Common.isNotNull(searchVo.getAuthSql()) && searchVo.getAuthSql().contains(CommonConstants.A_DEPT_ID)) {
searchVo.setAuthSql(searchVo.getAuthSql().replace(CommonConstants.A_DEPT_ID, "a.SETTLE_DOMAIN"));
}
searchVo.setCreateBy(user.getId());
tDispatchInfoService.doExportSocialSoldierAll(response,searchVo,searchVo.getIdStr(),null);
}
/** /**
* @Author fxj * @Author fxj
* @Description 导出 社保花名册 * @Description 导出 社保花名册
......
...@@ -105,6 +105,17 @@ public interface TDispatchInfoMapper extends BaseMapper<TDispatchInfo> { ...@@ -105,6 +105,17 @@ public interface TDispatchInfoMapper extends BaseMapper<TDispatchInfo> {
int getSocialSoldierCount(@Param("tDispatchInfo") SocialHandleSearchVo dispatchInfo, int getSocialSoldierCount(@Param("tDispatchInfo") SocialHandleSearchVo dispatchInfo,
@Param("idsStr") List<String> idsStr); @Param("idsStr") List<String> idsStr);
/**
* 自动化办理查询导出
**/
List<SocialSoldierExportVo> getSocialSoldierAllList(@Param("tDispatchInfo") SocialHandleSearchVo dispatchInfo,
@Param("idsStr") List<String> idsStr);
/**
* 导出社保士兵count
**/
int getSocialSoldierAllCount(@Param("tDispatchInfo") SocialHandleSearchVo dispatchInfo,
@Param("idsStr") List<String> idsStr);
/** /**
* @Description: 社保士兵列表查询 * @Description: 社保士兵列表查询
* @Author: hgw * @Author: hgw
......
...@@ -97,6 +97,13 @@ public interface TDispatchInfoService extends IService<TDispatchInfo> { ...@@ -97,6 +97,13 @@ public interface TDispatchInfoService extends IService<TDispatchInfo> {
* @return: void * @return: void
**/ **/
void doExportSocialSoldier(HttpServletResponse response, SocialHandleSearchVo searchVo, String idStr, String[] exportFields); void doExportSocialSoldier(HttpServletResponse response, SocialHandleSearchVo searchVo, String idStr, String[] exportFields);
/**
* @Description: 自动化办理查询导出
* @Author: hgw
* @Date: 2025/4/25 18:28
* @return: void
**/
void doExportSocialSoldierAll(HttpServletResponse response, SocialHandleSearchVo searchVo, String idStr, String[] exportFields);
void doexportSocialRecordRoster(HttpServletResponse response, SocialHandleSearchVo searchVo, String idStr, String[] exportFields); void doexportSocialRecordRoster(HttpServletResponse response, SocialHandleSearchVo searchVo, String idStr, String[] exportFields);
/** /**
......
...@@ -5272,6 +5272,31 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T ...@@ -5272,6 +5272,31 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
} }
/**
* @Author hgw
* @Description 自动化办理查询导出 count
* @Date 2024-5-13 11:30:12
* @Param
* @return
**/
private int getSocialSoldierAllCount(SocialHandleSearchVo searchVo, String idStr) {
List<String> ids = new ArrayList<>();
if (Common.isNotNull(idStr)){
ids = Common.initStrToList(idStr,CommonConstants.COMMA_STRING);
}
return baseMapper.getSocialSoldierAllCount(searchVo,ids);
}
/**
* @Description: 自动化办理查询导出
* @Author: hgw
* @Date: 2025/4/25 18:33
* @return: java.util.List<com.yifu.cloud.plus.v1.yifu.social.vo.SocialSoldierExportVo>
**/
private List<SocialSoldierExportVo> getSocialSoldierAllList(SocialHandleSearchVo searchVo, String idStr) {
return baseMapper.getSocialSoldierAllList(searchVo,Common.getList(idStr));
}
/** /**
* @Author hgw * @Author hgw
* @Description 社保士兵导出 count * @Description 社保士兵导出 count
...@@ -5335,7 +5360,74 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T ...@@ -5335,7 +5360,74 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
if (Common.isNotNull(list)){ if (Common.isNotNull(list)){
list.clear(); list.clear();
} }
updateSocialRecords(searchVo,idStr); }
excelWriter.finish();
}else {
WriteSheet writeSheet = EasyExcelFactory.writerSheet(DispatchConstants.SOCIAL_SOLDIER_EXPORT+index).build();
excelWriter.write(list,writeSheet);
excelWriter.finish();
}
if (Common.isNotNull(list)){
list.clear();
}
out.flush();
}catch (Exception e){
log.error("执行异常" ,e);
}finally {
try {
if (null != out) {
out.close();
}
} catch (IOException e) {
log.error("执行异常", e);
}
}
}
/**
* @Author hgw
* @Description 自动化办理查询导出
* @Date 2025-4-25 18:29:18
* @Param
* @return
**/
@Override
public void doExportSocialSoldierAll(HttpServletResponse response, SocialHandleSearchVo searchVo, String idStr, String[] exportFields) {
String fileName = DispatchConstants.SOCIAL_SOLDIER_EXPORT_ALL + DateUtil.getThisTime() + CommonConstants.XLSX;
//获取要导出的列表
List<SocialSoldierExportVo> list = new ArrayList<>();
long count = getSocialSoldierAllCount(searchVo,idStr);
ServletOutputStream out = null;
try {
out = response.getOutputStream();
response.setContentType(CommonConstants.MULTIPART_FORM_DATA);
response.setHeader(CommonConstants.CONTENT_DISPOSITION, CommonConstants.ATTACHMENT_FILENAME + URLEncoder.encode(fileName , CommonConstants.UTF8));
// 这里 需要指定写用哪个class去写,然后写到第一个sheet,然后文件流会自动关闭
ExcelWriter excelWriter = EasyExcelFactory.write(out, SocialSoldierExportVo.class).build();
int index = 0;
if (count > CommonConstants.ZERO_INT){
WriteSheet writeSheet;
ExcelUtil<SocialSoldierExportVo> util;
for (int i = 0; i <= count; ) {
// 获取实际记录
searchVo.setLimitStart(i);
searchVo.setLimitEnd(CommonConstants.EXCEL_EXPORT_LIMIT);
list = getSocialSoldierAllList(searchVo,idStr);
if (Common.isNotNull(list)){
util = new ExcelUtil<>(SocialSoldierExportVo.class);
for (SocialSoldierExportVo vo:list){
util.convertEntity(vo,null,null,null);
}
}
if (Common.isNotNull(list)){
writeSheet = EasyExcelFactory.writerSheet(DispatchConstants.SOCIAL_SOLDIER_EXPORT+index).build();
excelWriter.write(list,writeSheet);
index++;
i += CommonConstants.EXCEL_EXPORT_LIMIT;
}
if (Common.isNotNull(list)){
list.clear();
}
} }
excelWriter.finish(); excelWriter.finish();
}else { }else {
......
...@@ -1358,6 +1358,74 @@ ...@@ -1358,6 +1358,74 @@
order by a.AUDIT_TIME desc order by a.AUDIT_TIME desc
</select> </select>
<!--tDispatchInfo 自动化办理查询导出-->
<select id="getSocialSoldierAllList" resultMap="socialSoldierExportMap">
SELECT
a.TYPE,
a.SOCIAL_HANDLE_STATUS,
if(ifnull(h.id,0) != '0',h.PENSION_HANDLE,s.PENSION_HANDLE) PENSION_HANDLE,
if(ifnull(h.id,0) != '0',h.MEDICAL_HANDLE,s.MEDICAL_HANDLE) MEDICAL_HANDLE,
if(ifnull(h.id,0) != '0',h.UNEMPLOY_HANDLE,s.UNEMPLOY_HANDLE) UNEMPLOY_HANDLE,
if(ifnull(h.id,0) != '0',h.WORK_INJURY_HANDLE,s.WORK_INJURY_HANDLE) WORK_INJURY_HANDLE,
if(ifnull(h.id,0) != '0',h.BIRTH_HANDLE,s.BIRTH_HANDLE) BIRTH_HANDLE,
if(ifnull(h.id,0) != '0',h.BIGAILMENT_HANDLE,s.BIGAILMENT_HANDLE) BIGAILMENT_HANDLE,
a.EMP_NAME,
a.EMP_IDCARD,
a.EDUCATION_NAME,
a.BELONG_UNIT_NAME,
a.SETTLE_DOMAIN_NAME,
a.EMP_TYPE,
a.POST,
a.EMP_MOBILE,
a.ID_CARD_ADDRESS,
a.EMP_REGIS_TYPE,
a.EMP_NATIONAL,
a.WORKING_HOURS,
a.CONTRACT_TERM,
a.CONTRACT_START,
a.CONTRACT_END,
a.CREATE_NAME,
a.CONTACT_ADDRESS,
s.RECORD_BASE,
s.PAYMENT_TYPE,
a.SOCIAL_HOUSEHOLD_NAME,
if(ifnull(h.id,0) != '0',h.SOCIAL_PROVINCE,s.SOCIAL_PROVINCE) SOCIAL_PROVINCE,
if(ifnull(h.id,0) != '0',h.SOCIAL_CITY,s.SOCIAL_CITY) SOCIAL_CITY,
if(ifnull(h.id,0) != '0',h.SOCIAL_TOWN,s.SOCIAL_TOWN) SOCIAL_TOWN,
if(ifnull(h.id,0) != '0',h.PENSION_START,s.PENSION_START) PENSION_START,
if(ifnull(h.id,0) != '0',h.UNIT_PENSION_CARDINAL,s.UNIT_PENSION_CARDINAL) UNIT_PENSION_CARDINAL,
if(ifnull(h.id,0) != '0',h.MEDICAL_START,s.MEDICAL_START) MEDICAL_START,
if(ifnull(h.id,0) != '0',h.UNIT_MEDICAL_CARDINAL,s.UNIT_MEDICAL_CARDINAL) UNIT_MEDICAL_CARDINAL,
if(ifnull(h.id,0) != '0',h.UNEMPLOY_START,s.UNEMPLOY_START) UNEMPLOY_START,
if(ifnull(h.id,0) != '0',h.UNIT_UNEMPLOYMENT_CARDINAL,s.UNIT_UNEMPLOYMENT_CARDINAL) UNIT_UNEMPLOYMENT_CARDINAL,
if(ifnull(h.id,0) != '0',h.WORK_INJURY_START,s.WORK_INJURY_START) WORK_INJURY_START,
if(ifnull(h.id,0) != '0',h.UNIT_WORK_INJURY_CARDINAL,s.UNIT_WORK_INJURY_CARDINAL) UNIT_WORK_INJURY_CARDINAL,
if(ifnull(h.id,0) != '0',h.BIRTH_START,s.BIRTH_START) BIRTH_START,
if(ifnull(h.id,0) != '0',h.UNIT_BIRTH_CARDINAL,s.UNIT_BIRTH_CARDINAL) UNIT_BIRTH_CARDINAL,
if(ifnull(h.id,0) != '0',h.BIGAILMENT_START,s.BIGAILMENT_START) BIGAILMENT_START,
if(ifnull(h.id,0) != '0',h.UNIT_BIGAILMENT_CARDINAL,s.UNIT_BIGAILMENT_CARDINAL) UNIT_BIGAILMENT_CARDINAL,
if(ifnull(h.id,0) != '0',h.UNIT_BIGAILMENT_MONEY,s.UNIT_BIGAILMENT_MONEY) UNIT_BIGAILMENT_MONEY,
if(ifnull(h.id,0) != '0',h.PERSONAL_BIGAILMENT_MONEY,s.PERSONAL_BIGAILMENT_MONEY) PERSONAL_BIGAILMENT_MONEY,
a.TRUST_REMARK,
a.REDUCE_REASON,
'1' as EXPORT_SOCIAL_FLAG,
a.SCHOOL_NAME,
a.MAJOR,
a.FIRST_PAY_TIME,
a.GRADUATION_TIME,
IF(a.LEAVE_DATE is not null,DATE_FORMAT(a.LEAVE_DATE,"%Y-%m-%d"),"") as "LEAVE_DATE"
,s.ygs_Handle_Status
,s.ysd_Handle_Status
,s.YGS_REMARK
,s.YSD_REMARK
,s.YGS_REQUEST_ID,s.YSD_REQUEST_ID
FROM t_dispatch_info a
left join t_social_info s on a.SOCIAL_ID = s.id
left join t_dispatch_social_fund_info h on a.id = h.REDUCE_SOCIAL_FUND_ID
<include refid="where_getSocialSoldier"/>
order by a.AUDIT_TIME desc
</select>
<update id="updateSocialRecords"> <update id="updateSocialRecords">
update update
t_dispatch_info a t_dispatch_info a
...@@ -1395,6 +1463,20 @@ ...@@ -1395,6 +1463,20 @@
) a ) a
</select> </select>
<!-- 导出社保士兵count -->
<select id="getSocialSoldierAllCount" resultType="java.lang.Integer">
SELECT
count(1)
from (
SELECT
1
FROM t_dispatch_info a
left join t_social_info s on a.SOCIAL_ID = s.id
left join t_dispatch_social_fund_info h on a.id = h.REDUCE_SOCIAL_FUND_ID
<include refid="where_getSocialSoldier"/>
) a
</select>
<resultMap id="socialSoldierPageMap" type="com.yifu.cloud.plus.v1.yifu.social.vo.TSocialSoldierPageVo" extends="tDispatchInfoMap"> <resultMap id="socialSoldierPageMap" type="com.yifu.cloud.plus.v1.yifu.social.vo.TSocialSoldierPageVo" extends="tDispatchInfoMap">
<result property="socialHouseholdName" column="SOCIAL_HOUSEHOLD_NAME"/> <result property="socialHouseholdName" column="SOCIAL_HOUSEHOLD_NAME"/>
<result property="ygsHandleStatus" column="YGS_HANDLE_STATUS"/> <result property="ygsHandleStatus" column="YGS_HANDLE_STATUS"/>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment