领悦固定辅助核算信息

This commit is contained in:
Harryxzy 2025-04-30 09:46:12 +08:00
parent 06f597afa4
commit b8228ab63a
3 changed files with 99 additions and 100 deletions

View File

@ -61,4 +61,20 @@ public class UfKjkmPO {
// 该科目是否存在 辅助核算-银行账户
private boolean fzhsYhzhFlag;
// 固定项目期数
private String gdxmqs;
// 固定房屋类别
private String gdfwlb;
// 固定客商
private String gdks;
// 固定税率类别
private String gdsllb;
// 固定银行账户
private String gdyxzh;
}

View File

@ -11,6 +11,11 @@
<result column="pzlx" property="pzlx" />
<result column="xzxm" property="xzxm" />
<result column="zy" property="zy" />
<result column="gdxmqs" property="gdxmqs" />
<result column="gdfwlb" property="gdfwlb" />
<result column="gdks" property="gdks" />
<result column="gdsllb" property="gdsllb" />
<result column="gdyxzh" property="gdyxzh" />
</resultMap>
<!-- 表字段 -->
@ -24,6 +29,11 @@
, t.xzxm
, t.sfhbtj
, t.zy
, t.gdxmqs
, t.gdfwlb
, t.gdks
, t.gdsllb
, t.gdyxzh
</sql>
<!-- 查询全部 -->

View File

@ -120,7 +120,7 @@ public class LyPZServiceImpl extends Service implements LyPZService {
BaseBean baseBean = new BaseBean();
RecordSet rs = new RecordSet();
String yFlag = baseBean.getPropValue("lySalaryNCVoucher", "sfddpzfl_y_flag");
String dkgrsdsBm = baseBean.getPropValue("lySalaryNCVoucher", "kjkm_dkkrsds_bm");
// String dkgrsdsBm = baseBean.getPropValue("lySalaryNCVoucher", "kjkm_dkkrsds_bm");
// 获取所有的部门信息
List<DeptInfo> deptInfos = getSalaryEmployeeService(user).listAllDeptInfoList();
// key:分部id-部门名称 value:部门id
@ -201,17 +201,21 @@ public class LyPZServiceImpl extends Service implements LyPZService {
subCompanyIds.add(NumberUtils.isCreatable(subcompanyId) ? Long.valueOf(subcompanyId) : 0);
} else {
kjkmValueMap.put("deptInfo", deptInfo);
if (kjkm.getKmbm().equals(dkgrsdsBm) && queryParam.getPzlx().equals(LyPZTypeEnum.XZFFPZ.getValue())) {
kjkmValueMap.put(kjkm.getKmbm() + kjkm.getXzxm(), ((BigDecimal)kjkmValueMap.getOrDefault(kjkm.getKmbm() + kjkm.getXzxm(), new BigDecimal(0))).add(resultBigDecimal));
kjkmValueMap.put("subCompanyId", subcompanyId);
kjkmValueMap.put("frzt", fycdgsqcContent);
subCompanyIds.add(NumberUtils.isCreatable(subcompanyId) ? Long.valueOf(subcompanyId) : 0);
} else {
kjkmValueMap.put(kjkm.getKmbm(), ((BigDecimal)kjkmValueMap.getOrDefault(kjkm.getKmbm(), new BigDecimal(0))).add(resultBigDecimal));
kjkmValueMap.put("subCompanyId", subcompanyId);
kjkmValueMap.put("frzt", fycdgsqcContent);
subCompanyIds.add(NumberUtils.isCreatable(subcompanyId) ? Long.valueOf(subcompanyId) : 0);
}
// if (kjkm.getKmbm().equals(dkgrsdsBm) && queryParam.getPzlx().equals(LyPZTypeEnum.XZFFPZ.getValue())) {
// kjkmValueMap.put(kjkm.getKmbm() + kjkm.getXzxm(), ((BigDecimal)kjkmValueMap.getOrDefault(kjkm.getKmbm() + kjkm.getXzxm(), new BigDecimal(0))).add(resultBigDecimal));
// kjkmValueMap.put("subCompanyId", subcompanyId);
// kjkmValueMap.put("frzt", fycdgsqcContent);
// subCompanyIds.add(NumberUtils.isCreatable(subcompanyId) ? Long.valueOf(subcompanyId) : 0);
// } else {
// kjkmValueMap.put(kjkm.getKmbm(), ((BigDecimal)kjkmValueMap.getOrDefault(kjkm.getKmbm(), new BigDecimal(0))).add(resultBigDecimal));
// kjkmValueMap.put("subCompanyId", subcompanyId);
// kjkmValueMap.put("frzt", fycdgsqcContent);
// subCompanyIds.add(NumberUtils.isCreatable(subcompanyId) ? Long.valueOf(subcompanyId) : 0);
// }
kjkmValueMap.put(kjkm.getKmbm() + kjkm.getXzxm(), ((BigDecimal)kjkmValueMap.getOrDefault(kjkm.getKmbm() + kjkm.getXzxm(), new BigDecimal(0))).add(resultBigDecimal));
kjkmValueMap.put("subCompanyId", subcompanyId);
kjkmValueMap.put("frzt", fycdgsqcContent);
subCompanyIds.add(NumberUtils.isCreatable(subcompanyId) ? Long.valueOf(subcompanyId) : 0);
}
}
}
@ -257,70 +261,14 @@ public class LyPZServiceImpl extends Service implements LyPZService {
queryParam.setSalaryMonthDate(SalaryDateUtil.dateStrToLocalYearMonth(queryParam.getSalaryMonth()));
String chnYearMonth = SalaryDateUtil.getFormatCHNYearMonth(queryParam.getSalaryMonthDate());
// // 获取薪资发放凭证中需要固定的客商信息
// List<String> xzffNeedFixedKsKjkmList = new ArrayList<>();
// Map<String, String> xzffFixedKsValueMap = new HashMap<>();
// // 获取薪资发放凭证中需要固定的项目期数信息
// List<String> xzffNeedFixedXmqsKjkmList = new ArrayList<>();
// Map<String, String> xzffFixedXmqsValueMap = new HashMap<>();
// // 获取薪资发放凭证中需要固定的房屋类别信息
// List<String> xzffNeedFixedFwlbKjkmList = new ArrayList<>();
// Map<String, String> xzffFixedFwlbValueMap = new HashMap<>();
String pzlxKey = "";
if (queryParam.getPzlx().equals(LyPZTypeEnum.XZJTPZ.getValue())) {
pzlxKey = "xzjt";
} else if (queryParam.getPzlx().equals(LyPZTypeEnum.XZFFPZ.getValue())) {
pzlxKey = "xzff";
} else if (queryParam.getPzlx().equals(LyPZTypeEnum.SBJTPZ.getValue())) {
pzlxKey = "sbjt";
} else if (queryParam.getPzlx().equals(LyPZTypeEnum.SBFFPZ.getValue())) {
pzlxKey = "sbff";
} else if (queryParam.getPzlx().equals(LyPZTypeEnum.GJJJTPZ.getValue())) {
pzlxKey = "gjjjt";
} else if (queryParam.getPzlx().equals(LyPZTypeEnum.GJJFFPZ.getValue())) {
pzlxKey = "gjjff";
}
// 需要固定的项目期数信息
Map<String, String> fixedXmqsValueMap = new HashMap<>();
List<String> needFixedXmqsKjkmList = Arrays.stream(baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_need_fixed_xmqs_kjkm").split(",")).collect(Collectors.toList());
for (String kjkm : needFixedXmqsKjkmList) {
String xmqsValue = baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_xmqs_" + kjkm);
fixedXmqsValueMap.put(kjkm, Util.null2String(xmqsValue));
fzhsBmList.add(xmqsValue);
}
// 需要固定的房屋类别信息
Map<String, String> fixedFwlbValueMap = new HashMap<>();
List<String> needFixedFwlbKjkmList = Arrays.stream(baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_need_fixed_fwlb_kjkm").split(",")).collect(Collectors.toList());
for (String kjkm : needFixedFwlbKjkmList) {
String fwlbValue = baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_fwlb_" + kjkm);
fixedFwlbValueMap.put(kjkm, Util.null2String(fwlbValue));
fzhsBmList.add(fwlbValue);
}
// 需要固定的税率类别信息
Map<String, String> fixedSllbValueMap = new HashMap<>();
List<String> needFixedSllbKjkmList = Arrays.stream(baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_need_fixed_sllb_kjkm").split(",")).collect(Collectors.toList());
for (String kjkm : needFixedSllbKjkmList) {
String sllbValue = baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_sllb_" + kjkm);
fixedSllbValueMap.put(kjkm, Util.null2String(sllbValue));
fzhsBmList.add(sllbValue);
}
// 需要固定的客商信息
Map<String, String> fixedKsValueMap = new HashMap<>();
List<String> needFixedKsKjkmList = Arrays.stream(baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_need_fixed_ks_kjkm").split(",")).collect(Collectors.toList());
for (String kjkm : needFixedKsKjkmList) {
String ksValue = baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_ks_" + kjkm);
fixedKsValueMap.put(kjkm, Util.null2String(ksValue));
fzhsBmList.add(ksValue);
}
// 需要固定的银行账户
Map<String, String> fixedYhzhValueMap = new HashMap<>();
List<String> needFixedYhzhKjkmList = Arrays.stream(baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_need_fixed_yhzh_kjkm").split(",")).collect(Collectors.toList());
for (String kjkm : needFixedYhzhKjkmList) {
String yhzhValue = baseBean.getPropValue("lySalaryNCVoucher", pzlxKey + "_yhzh_" + kjkm);
fixedYhzhValueMap.put(kjkm, Util.null2String(yhzhValue));
fzhsBmList.add(yhzhValue);
}
// 会计科目上挂的辅助核算
ufKjkmList.stream().forEach(kjkm -> {
fzhsBmList.add(kjkm.getGdxmqs());
fzhsBmList.add(kjkm.getGdfwlb());
fzhsBmList.add(kjkm.getGdks());
fzhsBmList.add(kjkm.getGdsllb());
fzhsBmList.add(kjkm.getGdyxzh());
});
// 根据辅助核算编码获取辅助核算浏览框yx
Map<String, LyFzhsBrowser> fzhsBrowserMap = getFzhsBrowserByBm(fzhsBmList);
@ -354,11 +302,12 @@ public class LyPZServiceImpl extends Service implements LyPZService {
// 获取该会计科目对应的辅助核算
BigDecimal value = new BigDecimal(0);
try {
if (kjkm.getKmbm().equals(dkgrsdsBm) && queryParam.getPzlx().equals(LyPZTypeEnum.XZFFPZ.getValue())) {
value = ((BigDecimal) kjkmValueMap.get(kjkm.getKmbm()+kjkm.getXzxm())).setScale(2, RoundingMode.HALF_UP);
} else {
value = ((BigDecimal) kjkmValueMap.get(kjkm.getKmbm())).setScale(2, RoundingMode.HALF_UP);
}
value = ((BigDecimal) kjkmValueMap.get(kjkm.getKmbm()+kjkm.getXzxm())).setScale(2, RoundingMode.HALF_UP);
// if (kjkm.getKmbm().equals(dkgrsdsBm) && queryParam.getPzlx().equals(LyPZTypeEnum.XZFFPZ.getValue())) {
// value = ((BigDecimal) kjkmValueMap.get(kjkm.getKmbm()+kjkm.getXzxm())).setScale(2, RoundingMode.HALF_UP);
// } else {
// value = ((BigDecimal) kjkmValueMap.get(kjkm.getKmbm())).setScale(2, RoundingMode.HALF_UP);
// }
} catch (Exception e) {
baseBean.writeLog("获取失败"+kjkm.getKmbm() +e);
value = new BigDecimal(0);
@ -375,26 +324,49 @@ public class LyPZServiceImpl extends Service implements LyPZService {
.fzhsYxzh(frztFzhs != null && kjkm.isFzhsYhzhFlag() ? fzhsBrowserMap.get(frztFzhs.getFzhsyxzh()) : null)
.dataSource(reportDataIds)
.build();
// 固定项目期数
if (needFixedXmqsKjkmList.contains(kjkm.getKmbm())) {
build.setFzhsXmqs(frztFzhs != null && kjkm.isFzhsFlag() ? fzhsBrowserMap.get(fixedXmqsValueMap.get(kjkm.getKmbm())) : null);
}
// 固定房屋列表
if (needFixedFwlbKjkmList.contains(kjkm.getKmbm())) {
build.setFzhsFwlb(frztFzhs != null && kjkm.isFzhsFwlbFlag() ? fzhsBrowserMap.get(fixedFwlbValueMap.get(kjkm.getKmbm())) : null);
}
// 税率类别
if (needFixedSllbKjkmList.contains(kjkm.getKmbm())) {
build.setFzhsSllb(frztFzhs != null && kjkm.isFzhsSllbFlag() ? fzhsBrowserMap.get(fixedSllbValueMap.get(kjkm.getKmbm())) : null);
}
// 固定客商
if (needFixedKsKjkmList.contains(kjkm.getKmbm())) {
build.setFzhsKs(frztFzhs != null && kjkm.isFzhsKsFlag() ? fzhsBrowserMap.get(fixedKsValueMap.get(kjkm.getKmbm())) : null);
}
// 银行账户
if (needFixedYhzhKjkmList.contains(kjkm.getKmbm())) {
build.setFzhsYxzh(frztFzhs != null && kjkm.isFzhsYhzhFlag() ? fzhsBrowserMap.get(fixedYhzhValueMap.get(kjkm.getKmbm())) : null);
if (frztFzhs != null) {
if (kjkm.isFzhsFlag() && StringUtils.isNotBlank(kjkm.getGdxmqs()) ) {
build.setFzhsXmqs(fzhsBrowserMap.get(kjkm.getGdxmqs()));
}
// 固定房屋列表
if (kjkm.isFzhsFwlbFlag() && StringUtils.isNotBlank(kjkm.getGdfwlb()) ) {
build.setFzhsFwlb(fzhsBrowserMap.get(kjkm.getGdfwlb()));
}
// 固定税率类别
if (kjkm.isFzhsFlag() && StringUtils.isNotBlank(kjkm.getGdsllb()) ) {
build.setFzhsSllb(fzhsBrowserMap.get(kjkm.getGdsllb()));
}
// 固定客商
if (kjkm.isFzhsFlag() && StringUtils.isNotBlank(kjkm.getGdks())) {
build.setFzhsKs(fzhsBrowserMap.get(kjkm.getGdks()));
}
// 固定银行账户
if (kjkm.isFzhsFlag() && StringUtils.isNotBlank(kjkm.getGdyxzh()) ) {
build.setFzhsYxzh(fzhsBrowserMap.get(kjkm.getGdyxzh()));
}
}
// 固定项目期数
// if (needFixedXmqsKjkmList.contains(kjkm.getKmbm())) {
// build.setFzhsXmqs(frztFzhs != null && kjkm.isFzhsFlag() ? fzhsBrowserMap.get(fixedXmqsValueMap.get(kjkm.getKmbm())) : null);
// }
// // 固定房屋列表
// if (needFixedFwlbKjkmList.contains(kjkm.getKmbm())) {
// build.setFzhsFwlb(frztFzhs != null && kjkm.isFzhsFwlbFlag() ? fzhsBrowserMap.get(fixedFwlbValueMap.get(kjkm.getKmbm())) : null);
// }
// // 税率类别
// if (needFixedSllbKjkmList.contains(kjkm.getKmbm())) {
// build.setFzhsSllb(frztFzhs != null && kjkm.isFzhsSllbFlag() ? fzhsBrowserMap.get(fixedSllbValueMap.get(kjkm.getKmbm())) : null);
// }
// // 固定客商
// if (needFixedKsKjkmList.contains(kjkm.getKmbm())) {
// build.setFzhsKs(frztFzhs != null && kjkm.isFzhsKsFlag() ? fzhsBrowserMap.get(fixedKsValueMap.get(kjkm.getKmbm())) : null);
// }
// // 银行账户
// if (needFixedYhzhKjkmList.contains(kjkm.getKmbm())) {
// build.setFzhsYxzh(frztFzhs != null && kjkm.isFzhsYhzhFlag() ? fzhsBrowserMap.get(fixedYhzhValueMap.get(kjkm.getKmbm())) : null);
// }
String zy = genZy(build, queryParam.getFfgsqc(), Utils.null2String(kjkmValueMap.get("frzt")), chnYearMonth, kjkm);
build.setZy(zy);
@ -403,7 +375,8 @@ public class LyPZServiceImpl extends Service implements LyPZService {
+ "_" + (build.getFzhsFwlb() == null ? "" : build.getFzhsFwlb().getBh())
+ "_" + (build.getFzhsSllb() == null ? "" : build.getFzhsSllb().getBh())
+ "_" + (build.getFzhsKs() == null ? "" : build.getFzhsKs().getBh())
+ "_" + (build.getFzhsYxzh() == null ? "" : build.getFzhsYxzh().getBh());
+ "_" + (build.getFzhsYxzh() == null ? "" : build.getFzhsYxzh().getBh())
+ "_" + kjkm.getXzxm();
LyPzPreview lyPzPreviewTemp = lyPzPreviewTempMap.get(key);
if (lyPzPreviewTemp != null) {
if (kjkm.getFx().equals(LyJDDirectionTypeEnum.DEBIT.getValue())) {