|
@@ -2,7 +2,6 @@ package com.kingdee.eas.custom.shuiyou.taxCal.service;
|
|
|
|
|
|
import cn.com.servyou.dto.ApiResponse;
|
|
|
import cn.com.servyou.dto.Head;
|
|
|
-import cn.com.servyou.dto.employee.EmployeeDeclareFeedback;
|
|
|
import cn.com.servyou.dto.tax.*;
|
|
|
import cn.com.servyou.rmi.client.ClientProxyFactory;
|
|
|
import cn.com.servyou.service.TaxRequest;
|
|
@@ -242,7 +241,7 @@ public class GetASynIndividualIncomeTaxFeedback implements IHRMsfService {
|
|
|
if (successComplexIncomes != null) {
|
|
|
//SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
StringBuilder updateSql = new StringBuilder();
|
|
|
- updateSql.append("/*dialect*/update T_HR_STaxCalInitDetail set FSTATE = '40', ");
|
|
|
+ updateSql.append("/*dialect*/update T_HR_STaxCalInitDetail set FSTATE = '40',FERRORINFO = '成功', ");
|
|
|
for (String key : taxItemInitMap.keySet()) {
|
|
|
String tableField = taxItemInitMap.get(key);
|
|
|
updateSql.append(tableField).append("=?, ");
|
|
@@ -768,7 +767,7 @@ public class GetASynIndividualIncomeTaxFeedback implements IHRMsfService {
|
|
|
FilterItemCollection filterItems = filterInfo.getFilterItems();
|
|
|
filterItems.add(new FilterItemInfo("person", personId));
|
|
|
filterItems.add(new FilterItemInfo("taxUnit", taxUnitId));
|
|
|
- filterItems.add(new FilterItemInfo("periodBegin", periodBeginDate, CompareType.GREATER));
|
|
|
+ filterItems.add(new FilterItemInfo("periodBegin", periodBeginDate, CompareType.GREATER_EQUALS));
|
|
|
filterItems.add(new FilterItemInfo("periodEnd", periodEndDate, CompareType.LESS_EQUALS));
|
|
|
filterItems.add(new FilterItemInfo("incomeItem", incomeitemid));
|
|
|
filterItems.add(new FilterItemInfo("calScheme", calSchemeId));
|
|
@@ -776,6 +775,7 @@ public class GetASynIndividualIncomeTaxFeedback implements IHRMsfService {
|
|
|
SelectorItemCollection sic = new SelectorItemCollection();
|
|
|
sic.add("state");
|
|
|
EntityViewInfo instance = EntityViewInfo.getInstance(filterInfo, sic, null);
|
|
|
+ logger.info("instance: " + instance.toString());
|
|
|
TaxCalConfigDetailCollection taxCalConfigDetailCol = iTaxCalConfigDetail.getTaxCalConfigDetailCollection(instance);
|
|
|
if (taxCalConfigDetailCol.size() > 0) {
|
|
|
TaxCalConfigDetailInfo taxCalConfigDetailInfo = taxCalConfigDetailCol.get(0);
|
|
@@ -829,21 +829,24 @@ public class GetASynIndividualIncomeTaxFeedback implements IHRMsfService {
|
|
|
if (!configIds.isEmpty() && !initIds.isEmpty()) {
|
|
|
//更新明细表数据
|
|
|
StringBuilder updateSql = new StringBuilder();
|
|
|
- updateSql.append("update T_HR_STaxCalConfigDetail config set ").append("\n");
|
|
|
+ StringBuilder querySqlForUpdate = new StringBuilder();
|
|
|
+ updateSql.append("update T_HR_STaxCalConfigDetail config set (").append("\n");
|
|
|
for (String key : taxItemConfigMap.keySet()) {
|
|
|
- updateSql.append("config.").append(taxItemConfigMap.get(key))
|
|
|
- .append(" = init.").append(taxItemConfigMap.get(key)).append(",").append("\n");
|
|
|
+ updateSql.append(taxItemConfigMap.get(key)).append(",").append("\n");
|
|
|
+ querySqlForUpdate.append(taxItemConfigMap.get(key)).append(",").append("\n");
|
|
|
}
|
|
|
updateSql.deleteCharAt(updateSql.lastIndexOf(","));
|
|
|
- updateSql.append("from( select * from T_HR_STaxCalInitDetail where fid in( ");
|
|
|
- updateSql.append(AtsUtil.convertSetToString(initIds)).append(")) init").append("\n");
|
|
|
- updateSql.append("where config.fpersonId = init.fpersonId").append("\n");
|
|
|
- updateSql.append(" and config.fCmpCalTableId = init.fCmpCalTableId").append("\n");
|
|
|
- updateSql.append(" and config.fIncomeItemId = init.fIncomeItemId").append("\n");
|
|
|
- updateSql.append(" and config.FPERIODBEGIN = init.FPERIODBEGIN").append("\n");
|
|
|
- updateSql.append(" and config.FPERIODEND = init.FPERIODEND").append("\n");
|
|
|
- updateSql.append(" and config.fstate = '10'").append("\n");
|
|
|
- updateSql.append(" and config.fid in(").append(AtsUtil.convertSetToString(configIds)).append(")").append("\n");
|
|
|
+ querySqlForUpdate.deleteCharAt(querySqlForUpdate.lastIndexOf(","));
|
|
|
+ updateSql.append(") = (select ").append(querySqlForUpdate).append("\n");
|
|
|
+ updateSql.append(" from T_HR_STaxCalInitDetail ").append("\n");
|
|
|
+ updateSql.append(" where fid in (").append(AtsUtil.convertSetToString(initIds)).append(")").append("\n");
|
|
|
+ updateSql.append(" and config.fpersonId = fpersonId").append("\n");
|
|
|
+ updateSql.append(" and config.fCmpCalTableId = fCmpCalTableId").append("\n");
|
|
|
+ updateSql.append(" and config.fIncomeItemId = fIncomeItemId").append("\n");
|
|
|
+ updateSql.append(" and config.FPERIODBEGIN = FPERIODBEGIN").append("\n");
|
|
|
+ updateSql.append(" and config.FPERIODEND = FPERIODEND)").append("\n");
|
|
|
+ updateSql.append(" where config.fstate = '10'").append("\n");
|
|
|
+ updateSql.append(" and config.fid in(").append(AtsUtil.convertSetToString(configIds)).append(")").append("\n");
|
|
|
logger.info("更新明细表sql: " + updateSql);
|
|
|
DbUtil.execute(ctx, updateSql.toString());
|
|
|
}
|
|
@@ -960,7 +963,7 @@ public class GetASynIndividualIncomeTaxFeedback implements IHRMsfService {
|
|
|
//最终拆分明细表个税项目
|
|
|
Set configSet = new HashSet();
|
|
|
configSet.add("sre");//本期收入
|
|
|
- configSet.add("mssd // 本期免税收入");
|
|
|
+ configSet.add("mssd");// 本期免税收入
|
|
|
configSet.add("jbylaobxf");// 基本养老保险费
|
|
|
configSet.add("jbylbxf");// 基本医疗保险费
|
|
|
configSet.add("sybxf");// 失业保险费
|