Commit b0f984ea authored by fangxinjiang's avatar fangxinjiang

Merge remote-tracking branch 'origin/MVP1.2' into MVP1.2

parents 933664bb beb4ff8d
......@@ -104,6 +104,9 @@ public class TEmpChangeInfoServiceImpl extends ServiceImpl<TEmpChangeInfoMapper,
TSettleDomain tSettleDomain = tSettleDomainMapper.selectOne(Wrappers.<TSettleDomain>query().lambda()
.eq(TSettleDomain::getDepartNo, tEmpChangeInfo.getDeptNo()).eq(TSettleDomain::getDepartName, tEmpChangeInfo.getNewSettle())
.eq(TSettleDomain::getDeleteFlag, CommonConstants.ZERO_STRING).eq(TSettleDomain::getStopFlag, CommonConstants.ZERO_STRING));
if (Common.isEmpty(tSettleDomain)) {
return R.failed("对应项目编码的项目已停止合作");
}
TEmployeeProject tEmployeeProjectOld = tEmployeeProjectService.getById(updateTEmployeeProject.getId());
updateTEmployeeProject.setDeptNo(tEmpChangeInfo.getDeptNo());
updateTEmployeeProject.setDeptId(tEmpChangeInfo.getDeptId());
......
......@@ -482,7 +482,7 @@ public interface ErrorCodes {
*/
String EMP_DISPATCH_EMP_NOT_EMPTY = "emp.dispatch.emp.not.empty";
/**
* 派增异常: 对应项目编码已停止合作
* 派增异常:对应项目编码的项目已冻结/已停止合作
*/
String EMP_DISPATCH_SETTLEDOMAIN_STOP = "emp.dispatch.settleDomain.stop";
/**
......
......@@ -102,7 +102,7 @@ archives.project.change.contract.exist=\u4EBA\u5458\u5728\u8BE5\u9879\u76EE\u4E0
archives.project.emp.lose.fee.not.empty=\u4E0D\u826F\u8BB0\u5F55\u8D39\u7528\u635F\u5931\u548C\u5176\u4ED6\u635F\u5931\u4E0D\u53EF\u540C\u65F6\u4E3A\u7A7A
qt.project.change.not.exist=\u4EBA\u5458\u5728\u539F\u9879\u76EE\u4E2D\u5B58\u5728\u5728\u9014\u7684\u670D\u52A1\uFF0C\u8BF7\u5148\u7EC8\u6B62\u540E\uFF0C\u518D\u8FDB\u884C\u5212\u8F6C
project.search.not.exist=\u672A\u627E\u5230\u5BF9\u5E94\u7684\u9879\u76EE\u6216\u8005\u9879\u76EE\u5DF2\u505C\u6B62\u5408\u4F5C\uFF0C\u8BF7\u6838\u5B9E
project.search.not.exist=\u672A\u627E\u5230\u5BF9\u5E94\u7684\u65B0\u9879\u76EE\u6216\u8005\u65B0\u9879\u76EE\u5DF2\u505C\u6B62\u5408\u4F5C\uFF0C\u8BF7\u6838\u5B9E
change.strat.month.exit=\u5212\u8F6C\u8D77\u59CB\u6708\u4E0D\u80FD\u4E3A\u7A7A
change.less.month.exit=\u5212\u8F6C\u8D77\u59CB\u6708\u8981\u5C0F\u4E8E\u7B49\u4E8E\u5F53\u524D\u6708
......
......@@ -20,6 +20,7 @@ package com.yifu.cloud.plus.v1.yifu.social.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TSettleDomainSelectVo;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import com.yifu.cloud.plus.v1.yifu.salary.vo.TPaymentBySalaryVo;
import com.yifu.cloud.plus.v1.yifu.salary.vo.TPaymentVo;
......@@ -30,6 +31,7 @@ import com.yifu.cloud.plus.v1.yifu.social.entity.TSocialFundInfo;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 预估费用
......@@ -128,8 +130,8 @@ public interface TForecastLibraryService extends IService<TForecastLibrary> {
void createForecastInfo();
void createForecastFundInfo();
void pushForecastInfo(List<TForecastLibrary> library, boolean synFlag);
void pushForecastInfo(List<TForecastLibrary> library, boolean synFlag,Map<String,TSettleDomainSelectVo> mapSelectVo);
void pushForecastFundInfo(List<TForecastLibrary> library, boolean synFlag);
void pushForecastFundInfo(List<TForecastLibrary> library, boolean synFlag, Map<String, TSettleDomainSelectVo> mapSelectVo);
}
......@@ -33,8 +33,6 @@ import com.yifu.cloud.plus.v1.yifu.common.core.util.*;
import com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser;
import com.yifu.cloud.plus.v1.yifu.common.dapr.util.ArchivesDaprUtil;
import com.yifu.cloud.plus.v1.yifu.common.security.util.SecurityUtils;
import com.yifu.cloud.plus.v1.yifu.ekp.util.EkpFundUtil;
import com.yifu.cloud.plus.v1.yifu.ekp.util.EkpSocialUtil;
import com.yifu.cloud.plus.v1.yifu.insurances.util.BeanCopyUtils;
import com.yifu.cloud.plus.v1.yifu.salary.vo.TPaymentBySalaryVo;
import com.yifu.cloud.plus.v1.yifu.salary.vo.TPaymentVo;
......@@ -48,13 +46,11 @@ import com.yifu.cloud.plus.v1.yifu.social.mapper.TSocialFundInfoMapper;
import com.yifu.cloud.plus.v1.yifu.social.service.TForecastLibraryService;
import com.yifu.cloud.plus.v1.yifu.social.service.TIncomeDetailService;
import com.yifu.cloud.plus.v1.yifu.social.service.TIncomeService;
import com.yifu.cloud.plus.v1.yifu.social.service.TSendEkpErrorService;
import com.yifu.cloud.plus.v1.yifu.social.util.DoJointSocialTask;
import com.yifu.cloud.plus.v1.yifu.social.util.ServiceUtil;
import com.yifu.cloud.plus.v1.yifu.social.vo.TForecastLibraryExportVo;
import lombok.RequiredArgsConstructor;
import lombok.extern.log4j.Log4j2;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -83,18 +79,12 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
private final SysBaseSetInfoMapper sysBaseSetInfoMapper;
private final EkpFundUtil ekpFundUtil;
private final EkpSocialUtil ekpSocialUtil;
private final TIncomeDetailService detailService;
private final TIncomeService incomeService;
private final ArchivesDaprUtil archivesDaprUtil;
private final TSendEkpErrorService tSendEkpErrorService;
@Autowired
private DoJointSocialTask doJointSocialTask;
......@@ -326,6 +316,7 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
List<TForecastLibrary> libraryFundInfoListSocial = new ArrayList<>();
List<TForecastLibrary> libraryFundInfoListFund = new ArrayList<>();
Map<String,TSettleDomainSelectVo> mapSelectVo = this.getSelectVoMap();
for (TForecastLibrary library : saveLibraryMap.values()) {
if (Common.isEmpty(library.getSocialId()) && Common.isEmpty(library.getProvidentId())) {
continue;
......@@ -350,7 +341,7 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
&& CommonConstants.FOUR_STRING.equals(socialFundInfo.getSocialStatus())
|| CommonConstants.THREE_STRING.equals(socialFundInfo.getSocialStatus()))) {
//办理成功生成收入
createIncomeInfo(library,true);
createIncomeInfo(library,true,mapSelectVo);
if (CommonConstants.ZERO_INT == library.getDataPush()) {
libraryFundInfoListSocial.add(library);
}
......@@ -363,7 +354,7 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
if (Common.isNotNull(socialFundInfoF) && (Common.isNotNull(socialFundInfoF.getFundId())
&& CommonConstants.THREE_STRING.equals(socialFundInfoF.getFundStatus()))) {
//办理成功生成收入
createIncomeInfo(library,true);
createIncomeInfo(library,true,mapSelectVo);
if (CommonConstants.ZERO_INT == library.getDataPush()) {
libraryFundInfoListFund.add(library);
}
......@@ -371,11 +362,11 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
}
//推送社保明细
if (Common.isNotNull(libraryFundInfoListSocial)) {
pushForecastInfo(libraryFundInfoListSocial,true);
pushForecastInfo(libraryFundInfoListSocial,true, mapSelectVo);
}
//推送公积金明细
if (Common.isNotNull(libraryFundInfoListFund)) {
pushForecastFundInfo(libraryFundInfoListFund,true);
pushForecastFundInfo(libraryFundInfoListFund,true, mapSelectVo);
}
if (isSaveAndUpdate) {
return R.ok(null, "执行成功!");
......@@ -1575,11 +1566,11 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
}
//推送社保明细
if (Common.isNotNull(libraryFundInfoListSocial)) {
pushForecastInfo(libraryFundInfoListSocial,false);
pushForecastInfo(libraryFundInfoListSocial,false,null);
}
//推送公积金明细
if (Common.isNotNull(libraryFundInfoListFund)) {
pushForecastFundInfo(libraryFundInfoListFund,false);
pushForecastFundInfo(libraryFundInfoListFund,false,null);
}
}
return R.ok();
......@@ -1895,15 +1886,16 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
.eq(TForecastLibrary::getSettleDomainId, socialFundInfo.getSettleDomain())
.in(TForecastLibrary::getSocialPayMonth, payMonthList));
if (Common.isNotNull(librarySocialInfoList)) {
Map<String,TSettleDomainSelectVo> mapSelectVo = this.getSelectVoMap();
for (TForecastLibrary library : librarySocialInfoList) {
//办理成功生成收入
createIncomeInfo(library,synFlag);
createIncomeInfo(library, synFlag, mapSelectVo);
if (CommonConstants.ZERO_INT == library.getDataPush()) {
librarySocialInfoList1.add(library);
}
}
if (Common.isNotNull(librarySocialInfoList1)) {
this.pushForecastInfo(librarySocialInfoList1,synFlag);
this.pushForecastInfo(librarySocialInfoList1,synFlag,mapSelectVo);
}
}
}
......@@ -2228,6 +2220,7 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
List<TForecastLibrary> libraryFundInfoListSocial = new ArrayList<>();
List<TForecastLibrary> libraryFundInfoListFund = new ArrayList<>();
//社保收入
Map<String,TSettleDomainSelectVo> mapSelectVo = this.getSelectVoMap();
if (Common.isNotNull(socialFundInfo.getSocialId())
&& CommonConstants.FOUR_STRING.equals(socialFundInfo.getSocialStatus())
|| CommonConstants.THREE_STRING.equals(socialFundInfo.getSocialStatus())) {
......@@ -2242,7 +2235,7 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
if (Common.isNotNull(librarySocialInfoList)) {
for (TForecastLibrary library : librarySocialInfoList) {
//办理成功生成收入
createIncomeInfo(library,true);
createIncomeInfo(library,true, mapSelectVo);
if (CommonConstants.ZERO_INT == library.getDataPush()) {
libraryFundInfoListSocial.add(library);
}
......@@ -2264,7 +2257,7 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
if (Common.isNotNull(libraryFundInfoList)) {
for (TForecastLibrary library : libraryFundInfoList) {
//办理成功生成收入
createIncomeInfo(library,true);
createIncomeInfo(library,true, mapSelectVo);
if (CommonConstants.ZERO_INT == library.getDataPush()) {
libraryFundInfoListFund.add(library);
}
......@@ -2273,11 +2266,11 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
}
//推送社保明细
if (Common.isNotNull(libraryFundInfoListSocial)) {
pushForecastInfo(libraryFundInfoListSocial,true);
pushForecastInfo(libraryFundInfoListSocial,true,mapSelectVo);
}
//推送公积金明细
if (Common.isNotNull(libraryFundInfoListFund)) {
pushForecastFundInfo(libraryFundInfoListFund,true);
pushForecastFundInfo(libraryFundInfoListFund,true,mapSelectVo);
}
if (isSaveAndUpdate) {
return R.ok(null, "执行成功!");
......@@ -2396,24 +2389,40 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
}
@Override
public void pushForecastInfo(List<TForecastLibrary> library, boolean synFlag) {
public void pushForecastInfo(List<TForecastLibrary> library, boolean synFlag,
Map<String,TSettleDomainSelectVo> mapSelectVo) {
if (Common.isNotNull(library)) {
//推送数据封装并推送
Map<String,TSettleDomainSelectVo> selectVoMap = this.getSelectVoMap();
Map<String,TSettleDomainSelectVo> selectVoMap;
if (Common.isNotNull(mapSelectVo)) {
selectVoMap = mapSelectVo;
} else {
selectVoMap = this.getSelectVoMap();
}
initEkpPushSocialParam(library,synFlag, selectVoMap);
if (null != selectVoMap) {
selectVoMap.clear();
}
}
}
@Override
public void pushForecastFundInfo(List<TForecastLibrary> library,boolean synFlag) {
public void pushForecastFundInfo(List<TForecastLibrary> library,boolean synFlag,
Map<String,TSettleDomainSelectVo> mapSelectVo) {
if (Common.isNotNull(library)) {
Map<String,TSettleDomainSelectVo> selectVoMap;
if (Common.isNotNull(mapSelectVo)) {
selectVoMap = mapSelectVo;
} else {
selectVoMap = this.getSelectVoMap();
}
//推送数据封装并推送
Map<String,TSettleDomainSelectVo> selectVoMap = this.getSelectVoMap();
initEkpPushFundParam(library,synFlag, selectVoMap);
if (null != selectVoMap) {
selectVoMap.clear();
}
}
}
public void initEkpPushSocialParam(List<TForecastLibrary> unPushInfo, boolean synFlag,
Map<String, TSettleDomainSelectVo> selectVoMap) {
......@@ -2425,20 +2434,11 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
}
}
public void createIncomeInfo(TForecastLibrary library,boolean synFlag) {
public void createIncomeInfo(TForecastLibrary library,boolean synFlag,Map<String,TSettleDomainSelectVo> mapSelectVo) {
//获取项目信息
TSettleDomain settleDomain = new TSettleDomain();
List<TSettleDomainSelectVo> settleDomainR;
R<TSettleDomainListVo> listVo;
listVo = archivesDaprUtil.selectSettleDomainSelectVoById(library.getSettleDomainId());
if (Common.isNotNull(listVo)) {
TSettleDomainListVo tSettleDomainListVo = listVo.getData();
if (Common.isNotNull(tSettleDomainListVo) && Common.isNotEmpty(tSettleDomainListVo.getListSelectVO())) {
settleDomainR = tSettleDomainListVo.getListSelectVO();
for (TSettleDomainSelectVo vo : settleDomainR) {
BeanUtils.copyProperties(vo, settleDomain);
}
}
if (Common.isNotNull(mapSelectVo)) {
settleDomain = mapSelectVo.get(library.getDeptNo());
}
//判断是否存在当月的社保或公积金收入数据
......@@ -2474,25 +2474,21 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
// 含有社保,则计算收入
if (Common.isNotNull(settleDomain.getManageServerItem()) && ((settleDomain.getManageServerItem().contains(CommonConstants.ONE_STRING)
&& CommonConstants.ONE_STRING.equals(sourceType)) || (settleDomain.getManageServerItem().contains(CommonConstants.TWO_STRING)
&& CommonConstants.TWO_STRING.equals(sourceType)))) {
&& CommonConstants.TWO_STRING.equals(sourceType))) && CommonConstants.ZERO_STRING.equals(settleDomain.getManagementTag()) &&
CommonConstants.ONE_STRING.equals(settleDomain.getMrSettleType()) && !isExist ) {
//预估模式
if (CommonConstants.ZERO_STRING.equals(settleDomain.getManagementTag()) &&
CommonConstants.ONE_STRING.equals(settleDomain.getMrSettleType()) && !isExist) {
createIncomeInsurance(library, settleDomain, CommonConstants.ONE_STRING,
settleDomain.getManagementFee().toString(), settleDomain.getManagementType(),
settleDomain.getManagementFee(), sourceType,synFlag);
}
settleDomain.getManagementFee(), sourceType, synFlag);
}
if (Common.isNotNull(settleDomain.getRiskServerItem()) && ((settleDomain.getRiskServerItem().contains(CommonConstants.ONE_STRING)
&& CommonConstants.ONE_STRING.equals(sourceType)) || (settleDomain.getRiskServerItem().contains(CommonConstants.TWO_STRING)
&& CommonConstants.TWO_STRING.equals(sourceType)))) {
//预估模式
if (CommonConstants.ZERO_STRING.equals(settleDomain.getRiskFundTag()) &&
&& CommonConstants.TWO_STRING.equals(sourceType))) && CommonConstants.ZERO_STRING.equals(settleDomain.getRiskFundTag()) &&
CommonConstants.ONE_STRING.equals(settleDomain.getMrSettleType()) && !isExist) {
//预估模式
createIncomeInsurance(library, settleDomain, CommonConstants.TWO_STRING,
settleDomain.getRiskFundFee().toString(), settleDomain.getRiskFundType(),
settleDomain.getRiskFundFee(), sourceType,synFlag);
}
settleDomain.getRiskFundFee(), sourceType, synFlag);
}
}
}
......@@ -2539,11 +2535,4 @@ public class TForecastLibraryServiceImpl extends ServiceImpl<TForecastLibraryMap
detail.setId(CommonConstants.NULL);
incomeService.saveDetail(detail,synFlag);
}
public String dateStringInsert(String month) {
StringBuilder sb = new StringBuilder(month);
sb.insert(4, "-");
return sb.toString();
}
}
......@@ -58,10 +58,6 @@ import java.io.IOException;
import java.io.InputStream;
import java.net.URLEncoder;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
/**
* 收入明细表
......@@ -322,14 +318,12 @@ public class TIncomeServiceImpl extends ServiceImpl<TIncomeMapper, TIncome> impl
@Override
public void pushDetail() {
ThreadPoolExecutor threadPool = new ThreadPoolExecutor(50, 50, 100, TimeUnit.SECONDS, new LinkedBlockingQueue<>(10));
List<TIncome> list = baseMapper.selectList(Wrappers.<TIncome>query().lambda()
.eq(TIncome::getSendStatus, CommonConstants.ZERO_STRING));
ConcurrentHashMap<String,Integer> map = new ConcurrentHashMap<>();
ConcurrentHashMap<String,String> idMap = new ConcurrentHashMap<>();
Map<String, Integer> map = new HashMap<>();
Map<String, String> idMap = new HashMap<>();
//收入更新
List<TIncome> updateList = new ArrayList<>();
threadPool.execute(() -> {
for (TIncome income : list) {
String sendBack = this.getSendBack(income);
income.setSendTime(new Date());
......@@ -343,7 +337,7 @@ public class TIncomeServiceImpl extends ServiceImpl<TIncomeMapper, TIncome> impl
updateList.clear();
}
} else {
if (map.get(sendBack) > 0) {
if (Common.isNotNull(map.get(sendBack)) && map.get(sendBack) > 0) {
int i = map.get(sendBack) + 1;
map.put(sendBack, i);
idMap.put(sendBack, income.getId());
......@@ -368,7 +362,6 @@ public class TIncomeServiceImpl extends ServiceImpl<TIncomeMapper, TIncome> impl
}
}
}
});
for (Map.Entry<String, Integer> entry : map.entrySet()) {
TSendEkpError error = new TSendEkpError();
error.setCreateTime(new Date());
......
......@@ -89,7 +89,7 @@ public class DoSocialTask {
}
}
}
forecastLibraryService.pushForecastFundInfo(libs,false);
forecastLibraryService.pushForecastFundInfo(libs,false,null);
}
// 获取预估库数据并推送
if (type == CommonConstants.THREE_INT){
......
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