|
@@ -1,6 +1,7 @@
|
|
package cn.ezhizao.project.business.upgrade.service.impl;
|
|
package cn.ezhizao.project.business.upgrade.service.impl;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
@@ -21,15 +22,13 @@ import cn.ezhizao.project.business.order.service.IBizArchiveInputDetailService;
|
|
import cn.ezhizao.project.business.order.service.IBizArchiveInputService;
|
|
import cn.ezhizao.project.business.order.service.IBizArchiveInputService;
|
|
import cn.ezhizao.project.business.settings.domain.BizSource;
|
|
import cn.ezhizao.project.business.settings.domain.BizSource;
|
|
import cn.ezhizao.project.business.settings.service.IBizSourceService;
|
|
import cn.ezhizao.project.business.settings.service.IBizSourceService;
|
|
|
|
+import cn.ezhizao.project.business.upgrade.domain.*;
|
|
import cn.ezhizao.project.business.workOrder.domain.BizWorkOrder;
|
|
import cn.ezhizao.project.business.workOrder.domain.BizWorkOrder;
|
|
import cn.ezhizao.project.business.workOrder.domain.BizWorkOrderDetail;
|
|
import cn.ezhizao.project.business.workOrder.domain.BizWorkOrderDetail;
|
|
import cn.ezhizao.project.business.workOrder.service.IBizWorkOrderDetailService;
|
|
import cn.ezhizao.project.business.workOrder.service.IBizWorkOrderDetailService;
|
|
import cn.ezhizao.project.business.workOrder.service.IBizWorkOrderService;
|
|
import cn.ezhizao.project.business.workOrder.service.IBizWorkOrderService;
|
|
import cn.ezhizao.project.system.domain.SysUser;
|
|
import cn.ezhizao.project.system.domain.SysUser;
|
|
import cn.ezhizao.project.system.service.ISysUserService;
|
|
import cn.ezhizao.project.system.service.ISysUserService;
|
|
-import cn.ezhizao.project.business.upgrade.domain.BizArchiveInputDetailUpdate;
|
|
|
|
-import cn.ezhizao.project.business.upgrade.domain.BizWorkOrderDetailUpdate;
|
|
|
|
-import cn.ezhizao.project.business.upgrade.domain.BizWorkOrderUpdate;
|
|
|
|
import cn.ezhizao.project.business.upgrade.service.IBizArchiveInputDetailUpdateService;
|
|
import cn.ezhizao.project.business.upgrade.service.IBizArchiveInputDetailUpdateService;
|
|
import cn.ezhizao.project.business.upgrade.service.IBizWorkOrderDetailUpdateService;
|
|
import cn.ezhizao.project.business.upgrade.service.IBizWorkOrderDetailUpdateService;
|
|
import cn.ezhizao.project.business.upgrade.service.IBizWorkOrderUpdateService;
|
|
import cn.ezhizao.project.business.upgrade.service.IBizWorkOrderUpdateService;
|
|
@@ -37,7 +36,6 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import cn.ezhizao.project.business.upgrade.mapper.BizArchiveInputTempMapper;
|
|
import cn.ezhizao.project.business.upgrade.mapper.BizArchiveInputTempMapper;
|
|
-import cn.ezhizao.project.business.upgrade.domain.BizArchiveInputUpdate;
|
|
|
|
import cn.ezhizao.project.business.upgrade.service.IBizArchiveInputTempService;
|
|
import cn.ezhizao.project.business.upgrade.service.IBizArchiveInputTempService;
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -726,4 +724,91 @@ public class BizArchiveInputTempServiceImpl extends ServiceImpl<BizArchiveInputT
|
|
List<BizArchiveInputDetail> bizArchiveInputDetailList = bizArchiveInputDetailUpdateService.selectByUpgradeId(query2);
|
|
List<BizArchiveInputDetail> bizArchiveInputDetailList = bizArchiveInputDetailUpdateService.selectByUpgradeId(query2);
|
|
bizArchiveInputDetailService.saveBatch(bizArchiveInputDetailList);
|
|
bizArchiveInputDetailService.saveBatch(bizArchiveInputDetailList);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public Map<String,List<importCheckModel>> checkInput(List<OrderExcelImportLoopModel> orderList) {
|
|
|
|
+ importCheckModel checkmodel = null;
|
|
|
|
+ //结束月小于当前时间
|
|
|
|
+ List<importCheckModel> endMonthList = new ArrayList<>();
|
|
|
|
+ //开始时间大于当前时间
|
|
|
|
+ List<importCheckModel> startMonthList = new ArrayList<>();
|
|
|
|
+
|
|
|
|
+ List<importCheckModel> checkModelList = new ArrayList<>();
|
|
|
|
+ for(OrderExcelImportLoopModel model : orderList){
|
|
|
|
+ String companyName = model.getCompanyName();
|
|
|
|
+
|
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
|
+ Long taskId = 0L;
|
|
|
|
+
|
|
|
|
+ if ("是".equals(model.getKeepAccount())) {
|
|
|
|
+ checkmodel = new importCheckModel();
|
|
|
|
+ checkmodel.setCompanyName(companyName);
|
|
|
|
+ checkmodel.setContractNo(model.getContractNo());
|
|
|
|
+ checkmodel.setTaskType("代理记账");
|
|
|
|
+ checkmodel.setStartMonth(model.getKeepAccountStartMonth());
|
|
|
|
+ checkmodel.setEndMonth(model.getKeepAccountEndMonth());
|
|
|
|
+ checkModelList.add(checkmodel);
|
|
|
|
+ }
|
|
|
|
+ if ("是".equals(model.getSocialSecurity())) {
|
|
|
|
+ checkmodel = new importCheckModel();
|
|
|
|
+ checkmodel.setCompanyName(companyName);
|
|
|
|
+ checkmodel.setContractNo(model.getContractNo());
|
|
|
|
+ checkmodel.setTaskType("社保");
|
|
|
|
+ checkmodel.setStartMonth(model.getSocialSecurityStartMonth());
|
|
|
|
+ checkmodel.setEndMonth(model.getSocialSecurityEndMonth());
|
|
|
|
+ checkModelList.add(checkmodel);
|
|
|
|
+ }
|
|
|
|
+ if ("是".equals(model.getHousingFund())) {
|
|
|
|
+ checkmodel = new importCheckModel();
|
|
|
|
+ checkmodel.setCompanyName(companyName);
|
|
|
|
+ checkmodel.setContractNo(model.getContractNo());
|
|
|
|
+ checkmodel.setTaskType("公积金");
|
|
|
|
+ checkmodel.setStartMonth(model.getHousingFundStartMonth());
|
|
|
|
+ checkmodel.setEndMonth(model.getHousingFundEndMonth());
|
|
|
|
+ checkModelList.add(checkmodel);
|
|
|
|
+ }
|
|
|
|
+ if ("是".equals(model.getReturnTax())) {
|
|
|
|
+ checkmodel = new importCheckModel();
|
|
|
|
+ checkmodel.setCompanyName(companyName);
|
|
|
|
+ checkmodel.setContractNo(model.getContractNo());
|
|
|
|
+ checkmodel.setTaskType("返税");
|
|
|
|
+ checkmodel.setStartMonth(model.getReturnTaxStartMonth());
|
|
|
|
+ checkmodel.setEndMonth(model.getReturnTaxEndMonth());
|
|
|
|
+ checkModelList.add(checkmodel);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ // 同类型分组
|
|
|
|
+ Map<String, List<importCheckModel>> groupMap = new HashMap<>();
|
|
|
|
+ for (importCheckModel groupModel : checkModelList) {
|
|
|
|
+ String key = groupModel.getCompanyName() + "-" + groupModel.getTaskType();
|
|
|
|
+ List<importCheckModel> subGroupList = groupMap.get(key);
|
|
|
|
+ if (subGroupList == null) {
|
|
|
|
+ subGroupList = new ArrayList<>();
|
|
|
|
+ }
|
|
|
|
+ subGroupList.add(groupModel);
|
|
|
|
+ groupMap.put(key, subGroupList);
|
|
|
|
+ }
|
|
|
|
+ for(List<importCheckModel> model:groupMap.values()){
|
|
|
|
+ List<importCheckModel> startList =
|
|
|
|
+ model.stream()
|
|
|
|
+ .sorted(Comparator.comparing(importCheckModel::getStartMonth))
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
+ List<importCheckModel> endList =
|
|
|
|
+ model.stream()
|
|
|
|
+ .sorted(Comparator.comparing(importCheckModel::getEndMonth))
|
|
|
|
+ .collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+ if(endList.get(endList.size()-1).getEndMonth().compareTo(new Date()) < 0){
|
|
|
|
+ endMonthList.add(endList.get(endList.size()-1));
|
|
|
|
+ }
|
|
|
|
+ if(startList.get(0).getStartMonth().compareTo(new Date()) > 0){
|
|
|
|
+ startMonthList.add(startList.get(0));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ Map<String,List<importCheckModel>> map = new HashMap<>();
|
|
|
|
+ map.put("startMonth",startMonthList);
|
|
|
|
+ map.put("endMonth",endMonthList);
|
|
|
|
+ return map;
|
|
|
|
+ }
|
|
}
|
|
}
|