diff --git a/src/com/engine/salary/entity/ly/dto/LyFzhsInfo.java b/src/com/engine/salary/entity/ly/dto/LyFzhsInfo.java index 01e8a29a7..436fb0a59 100644 --- a/src/com/engine/salary/entity/ly/dto/LyFzhsInfo.java +++ b/src/com/engine/salary/entity/ly/dto/LyFzhsInfo.java @@ -57,4 +57,9 @@ public class LyFzhsInfo { */ private String fzhsyxzh; + /** + * nc账簿 + */ + private String nczb; + } diff --git a/src/com/engine/salary/mapper/ly/LyFundReportMapper.xml b/src/com/engine/salary/mapper/ly/LyFundReportMapper.xml index 749433100..53b10e83d 100644 --- a/src/com/engine/salary/mapper/ly/LyFundReportMapper.xml +++ b/src/com/engine/salary/mapper/ly/LyFundReportMapper.xml @@ -282,25 +282,11 @@ UPDATE hrsa_ly_fund_report - create_time=#{createTime}, - creator=#{creator}, - data_sorce=#{dataSorce}, + delete_type=#{deleteType}, - ftemp_num=#{ftempNum}, - fwf=#{fwf}, - fycdgsqc=#{fycdgsqc}, - gjj_gjjhj=#{gjjGjjhj}, - gjj_grbf=#{gjjGrbf}, - gjj_gsbf=#{gjjGsbf}, gjjffpz_flag=#{gjjffpzFlag}, gjjjtpz_flag=#{gjjjtpzFlag}, - gkgrygzhje=#{gkgrygzhje}, - gmgsqc=#{gmgsqc}, - salary_month=#{salaryMonth}, - subcompany_id=#{subcompanyId}, update_time=#{updateTime}, - znxmlx=#{znxmlx}, - znxmmc=#{znxmmc}, WHERE id = #{id} AND delete_type = 0 diff --git a/src/com/engine/salary/mapper/ly/LySocialReportMapper.xml b/src/com/engine/salary/mapper/ly/LySocialReportMapper.xml index e7d91c856..72636238f 100644 --- a/src/com/engine/salary/mapper/ly/LySocialReportMapper.xml +++ b/src/com/engine/salary/mapper/ly/LySocialReportMapper.xml @@ -452,37 +452,12 @@ UPDATE hrsa_ly_social_report - salary_month=#{salaryMonth}, - gmgsqc=#{gmgsqc}, - fycdgsqc=#{fycdgsqc}, - znxmmc=#{znxmmc}, - ftemp_num=#{ftempNum}, - yl_gsbf=#{ylGsbf}, - yl_grbf=#{ylGrbf}, - yiliao_gsbf=#{yiliaoGsbf}, - yiliao_grbf=#{yiliaoGrbf}, - sy_gsbf=#{syGsbf}, - sy_grbf=#{syGrbf}, - shengy_gsbf=#{shengyGsbf}, - gs_gsbf=#{gsGsbf}, - bcyljqt_gsbf=#{bcyljqtGsbf}, - sb_gsbf=#{sbGsbf}, - sb_grbf=#{sbGrbf}, - sb_sbhj=#{sbSbhj}, - gjj_gsbf=#{gjjGsbf}, - gjj_grbf=#{gjjGrbf}, - gjj_gjjhj=#{gjjGjjhj}, - fwf=#{fwf}, - gkgrygzhje=#{gkgrygzhje}, - data_sorce=#{dataSorce}, xzjtpz_flag=#{xzjtpzFlag}, xzffpz_flag=#{xzffpzFlag}, sbjtpz_flag=#{sbjtpzFlag}, sbffpz_flag=#{sbffpzFlag}, gjjjtpz_flag=#{gjjjtpzFlag}, gjjffpz_flag=#{gjjffpzFlag}, - creator=#{creator}, - create_time=#{createTime}, update_time=#{updateTime}, delete_type=#{deleteType}, diff --git a/src/com/engine/salary/service/LyPZService.java b/src/com/engine/salary/service/LyPZService.java index cd9407eb2..ed8af0bfd 100644 --- a/src/com/engine/salary/service/LyPZService.java +++ b/src/com/engine/salary/service/LyPZService.java @@ -1,5 +1,6 @@ package com.engine.salary.service; +import com.engine.salary.entity.ly.dto.LyFzhsInfo; import com.engine.salary.entity.ly.param.LyFzhslxParam; import com.engine.salary.entity.ly.param.LyPZGenParam; import com.engine.salary.entity.ly.param.LyVoucherPushParam; @@ -7,6 +8,7 @@ import com.engine.salary.entity.ly.param.LyVoucherQueryParam; import com.engine.salary.entity.ly.po.LyVoucherPO; import com.engine.salary.util.page.PageInfo; +import java.util.List; import java.util.Map; /** @@ -25,6 +27,8 @@ public interface LyPZService { */ Map genPZ(LyPZGenParam queryParam); + List listFzhsByFrzt(List frztNameList); + Map listAllFrzt(); /** diff --git a/src/com/engine/salary/service/LySalaryReportService.java b/src/com/engine/salary/service/LySalaryReportService.java index c5c4d2e99..0e438c371 100644 --- a/src/com/engine/salary/service/LySalaryReportService.java +++ b/src/com/engine/salary/service/LySalaryReportService.java @@ -151,4 +151,6 @@ public interface LySalaryReportService { void generateCymxGjjReport(String salaryMonth); void deleteByIds(List needDeleteIds); + + Map getHszb(String ffgsqc); } diff --git a/src/com/engine/salary/service/impl/LyPZServiceImpl.java b/src/com/engine/salary/service/impl/LyPZServiceImpl.java index df9ee2788..390905629 100644 --- a/src/com/engine/salary/service/impl/LyPZServiceImpl.java +++ b/src/com/engine/salary/service/impl/LyPZServiceImpl.java @@ -257,26 +257,37 @@ public class LyPZServiceImpl extends Service implements LyPZService { queryParam.setSalaryMonthDate(SalaryDateUtil.dateStrToLocalYearMonth(queryParam.getSalaryMonth())); String chnYearMonth = SalaryDateUtil.getFormatCHNYearMonth(queryParam.getSalaryMonthDate()); - // 获取特殊摘要对应的会计科目编码 - // // 生育津贴 - // String syjtKjkm = baseBean.getPropValue("lySalaryNCVoucher", "syjt_kjkm_bm"); - // // 银行存款 - // String yhckKjkm = baseBean.getPropValue("lySalaryNCVoucher", "yhck_kjkm_bm"); - // // 母子公司往来款 - // String mzgswlkKjkm = baseBean.getPropValue("lySalaryNCVoucher", "mzgswlk_kjkm_bm"); - // // 代买社保公积金 - // String dmsbgjjKjkm = baseBean.getPropValue("lySalaryNCVoucher", "dmsbgjj_kjkm_bm"); - // 获取薪资发放凭证中需要固定的客商信息 List xzffNeedFixedKsKjkmList = new ArrayList<>(); Map xzffFixedKsValueMap = new HashMap<>(); + // 获取薪资发放凭证中需要固定的项目期数信息 + List xzffNeedFixedXmqsKjkmList = new ArrayList<>(); + Map xzffFixedXmqsValueMap = new HashMap<>(); + // 获取薪资发放凭证中需要固定的房屋类别信息 + List xzffNeedFixedFwlbKjkmList = new ArrayList<>(); + Map xzffFixedFwlbValueMap = new HashMap<>(); if (queryParam.getPzlx().equals(LyPZTypeEnum.XZFFPZ.getValue())) { + // 客商 xzffNeedFixedKsKjkmList = Arrays.stream(baseBean.getPropValue("lySalaryNCVoucher", "xzff_need_fixed_ks_kjkm").split(",")).collect(Collectors.toList()); for (String kjkm : xzffNeedFixedKsKjkmList) { String ksValue = baseBean.getPropValue("lySalaryNCVoucher", "xzff_ks_" + kjkm); xzffFixedKsValueMap.put(kjkm, Util.null2String(ksValue)); fzhsBmList.add(ksValue); } + // 项目期数 + xzffNeedFixedXmqsKjkmList = Arrays.stream(baseBean.getPropValue("lySalaryNCVoucher", "xzff_need_fixed_xmqs_kjkm").split(",")).collect(Collectors.toList()); + for (String kjkm : xzffNeedFixedXmqsKjkmList) { + String xmqsValue = baseBean.getPropValue("lySalaryNCVoucher", "xzff_xmqs_" + kjkm); + xzffFixedXmqsValueMap.put(kjkm, Util.null2String(xmqsValue)); + fzhsBmList.add(xmqsValue); + } + // 房屋类别 + xzffNeedFixedFwlbKjkmList = Arrays.stream(baseBean.getPropValue("lySalaryNCVoucher", "xzff_need_fixed_fwlb_kjkm").split(",")).collect(Collectors.toList()); + for (String kjkm : xzffNeedFixedFwlbKjkmList) { + String fwlbValue = baseBean.getPropValue("lySalaryNCVoucher", "xzff_fwlb_" + kjkm); + xzffFixedFwlbValueMap.put(kjkm, Util.null2String(fwlbValue)); + fzhsBmList.add(fwlbValue); + } } // 根据辅助核算编码获取辅助核算浏览框yx Map fzhsBrowserMap = getFzhsBrowserByBm(fzhsBmList); @@ -331,9 +342,18 @@ public class LyPZServiceImpl extends Service implements LyPZService { .fzhsYxzh(frztFzhs != null && kjkm.isFzhsYhzhFlag() ? fzhsBrowserMap.get(frztFzhs.getFzhsyxzh()) : null) .dataSource(reportDataIds) .build(); + // 固定客商 if (xzffNeedFixedKsKjkmList.contains(kjkm.getKmbm())) { build.setFzhsKs(frztFzhs != null && kjkm.isFzhsKsFlag() ? fzhsBrowserMap.get(xzffFixedKsValueMap.get(kjkm.getKmbm())) : null); } + // 固定项目期数 + if (xzffNeedFixedXmqsKjkmList.contains(kjkm.getKmbm())) { + build.setFzhsXmqs(frztFzhs != null && kjkm.isFzhsFlag() ? fzhsBrowserMap.get(xzffFixedXmqsValueMap.get(kjkm.getKmbm())) : null); + } + // 固定房屋列表 + if (xzffNeedFixedFwlbKjkmList.contains(kjkm.getKmbm())) { + build.setFzhsFwlb(frztFzhs != null && kjkm.isFzhsFwlbFlag() ? fzhsBrowserMap.get(xzffFixedFwlbValueMap.get(kjkm.getKmbm())) : null); + } String zy = genZy(build, queryParam.getFfgsqc(), Utils.null2String(kjkmValueMap.get("frzt")), chnYearMonth, kjkm); build.setZy(zy); @@ -397,7 +417,7 @@ public class LyPZServiceImpl extends Service implements LyPZService { * @param frztNameList * @return */ - private List listFzhsByFrzt(List frztNameList) { + public List listFzhsByFrzt(List frztNameList) { if (CollectionUtils.isEmpty(frztNameList)) { return Collections.emptyList(); } @@ -405,17 +425,19 @@ public class LyPZServiceImpl extends Service implements LyPZService { List> partition = Lists.partition(frztNameList, 500); List resultList = new ArrayList<>(); partition.forEach(part -> { - rs.execute("select frzt,sllb,ks,yxzh from uf_frzt where frzt in ('" +StringUtils.join(part, "','")+ "')"); + rs.execute("select frzt,sllb,ks,yxzh,nczb from uf_frzt where frzt in ('" +StringUtils.join(part, "','")+ "')"); while (rs.next()) { String frzt = rs.getString("frzt"); String sllb = rs.getString("sllb"); String ks = rs.getString("ks"); String yxzh = rs.getString("yxzh"); + String nczb = rs.getString("nczb"); LyFzhsInfo build = LyFzhsInfo.builder() .frzt(frzt) .fzhssllb(sllb) .fzhsks(ks) .fzhsyxzh(yxzh) + .nczb(nczb) .build(); resultList.add(build); } @@ -538,9 +560,9 @@ public class LyPZServiceImpl extends Service implements LyPZService { Map resultMap = getLySalaryReportService(user).listSalaryReport(LySalaryReportQueryParam.builder() .salaryMonth(queryParam.getSalaryMonth()) .ffgsqc(Collections.singletonList(queryParam.getFfgsqc())) - .fycdgsqc(queryParam.getFycdgsqc()) - .jtStatus(queryParam.getJtStatus()) - .ffStatus(queryParam.getFfStatus()) + // .fycdgsqc(queryParam.getFycdgsqc()) + // .jtStatus(queryParam.getJtStatus()) + // .ffStatus(queryParam.getFfStatus()) .export(true).build()); List dataList = ((PageInfo)resultMap.get("data")).getList(); // 将每一个结果转换成map的格式并作为变量存储 @@ -566,9 +588,9 @@ public class LyPZServiceImpl extends Service implements LyPZService { Map resultMap = getLySocialReportService(user).listSIReport(LySalaryReportQueryParam.builder() .salaryMonth(queryParam.getSalaryMonth()) .ffgsqc(Collections.singletonList(queryParam.getFfgsqc())) - .fycdgsqc(queryParam.getFycdgsqc()) - .jtStatus(queryParam.getJtStatus()) - .ffStatus(queryParam.getFfStatus()) + // .fycdgsqc(queryParam.getFycdgsqc()) + // .jtStatus(queryParam.getJtStatus()) + // .ffStatus(queryParam.getFfStatus()) .export(true).build()); List dataList = ((PageInfo)resultMap.get("data")).getList(); // 将每一个结果转换成map的格式并作为变量存储 @@ -595,9 +617,9 @@ public class LyPZServiceImpl extends Service implements LyPZService { .salaryMonth(queryParam.getSalaryMonth()) .ffgsqc(Collections.singletonList(queryParam.getFfgsqc())) .export(true) - .fycdgsqc(queryParam.getFycdgsqc()) - .jtStatus(queryParam.getJtStatus()) - .ffStatus(queryParam.getFfStatus()) + // .fycdgsqc(queryParam.getFycdgsqc()) + // .jtStatus(queryParam.getJtStatus()) + // .ffStatus(queryParam.getFfStatus()) .build()); List dataList = ((PageInfo)resultMap.get("data")).getList(); // 将每一个结果转换成map的格式并作为变量存储 diff --git a/src/com/engine/salary/service/impl/LySalaryReportServiceImpl.java b/src/com/engine/salary/service/impl/LySalaryReportServiceImpl.java index 44411cb19..fa5df20c5 100644 --- a/src/com/engine/salary/service/impl/LySalaryReportServiceImpl.java +++ b/src/com/engine/salary/service/impl/LySalaryReportServiceImpl.java @@ -7,6 +7,7 @@ import com.engine.salary.common.LocalDateRange; import com.engine.salary.component.WeaTableColumnGroup; import com.engine.salary.entity.datacollection.DataCollectionEmployee; import com.engine.salary.entity.hrm.DeptInfo; +import com.engine.salary.entity.ly.dto.LyFzhsInfo; import com.engine.salary.entity.ly.param.LySalaryReportQueryParam; import com.engine.salary.entity.ly.po.LySalaryReportPO; import com.engine.salary.entity.ly.po.UfGjjInfo; @@ -852,6 +853,33 @@ public class LySalaryReportServiceImpl extends Service implements LySalaryReport }); } + @Override + public Map getHszb(String ffgsqc) { + HashMap resultMap = new HashMap<>(); + if (StringUtils.isBlank(ffgsqc)) { + return resultMap; + } + List frztFzhsList = getLyPZService(user).listFzhsByFrzt(Collections.singletonList(ffgsqc)); + Map frztFzhsInfoMap = SalaryEntityUtil.convert2Map(frztFzhsList, LyFzhsInfo::getFrzt); + // 默认核算账簿 + LyFzhsInfo ffgsqcFrzt = frztFzhsInfoMap.get(ffgsqc); + String zbmc = ""; + String zbbm = ""; + if (ffgsqcFrzt != null) { + String nczbBm = ffgsqcFrzt.getNczb(); + String sql = "select zbbm,zbmc from uf_nc_zbxx where zbbm = '" + nczbBm + "'"; + RecordSet rs = new RecordSet(); + rs.execute(sql); + if (rs.next()) { + zbmc = rs.getString("zbmc"); + zbbm = rs.getString("zbbm"); + } + } + resultMap.put("name", zbmc); + resultMap.put("id", zbbm); + return resultMap; + } + @Override public XSSFWorkbook exportSalaryReport(LySalaryReportQueryParam param) { param.setExport(true); diff --git a/src/com/engine/salary/web/LySalaryController.java b/src/com/engine/salary/web/LySalaryController.java index fbd296cd2..90c77574a 100644 --- a/src/com/engine/salary/web/LySalaryController.java +++ b/src/com/engine/salary/web/LySalaryController.java @@ -457,6 +457,15 @@ public class LySalaryController { return new ResponseResult>(user).run(getLySalaryWrapper(user)::genPZ, param); } + + @POST + @Path("/PZ/getHszb") + @Produces(MediaType.APPLICATION_JSON) + public String getHszb(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody LyPZGenParam param) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult>(user).run(getLySalaryWrapper(user)::getHszb, param); + } + // 推送UC并本地保存 @POST @Path("/PZ/pushUCAndSave") diff --git a/src/com/engine/salary/wrapper/LySalaryWrapper.java b/src/com/engine/salary/wrapper/LySalaryWrapper.java index 7bc7a2a35..354385b2e 100644 --- a/src/com/engine/salary/wrapper/LySalaryWrapper.java +++ b/src/com/engine/salary/wrapper/LySalaryWrapper.java @@ -343,4 +343,8 @@ public class LySalaryWrapper extends Service { public void generateCymxGjjReport(String salaryMonth) { getLySalaryReportService(user).generateCymxGjjReport(salaryMonth); } + + public Map getHszb(LyPZGenParam param) { + return getLySalaryReportService(user).getHszb(param.getFfgsqc()); + } }