|
@@ -12,6 +12,7 @@ import cn.ezhizao.framework.aspectj.lang.annotation.distributedLock;
|
|
|
import cn.ezhizao.framework.aspectj.lang.enums.BusinessType;
|
|
|
import cn.ezhizao.framework.web.controller.BaseController;
|
|
|
import cn.ezhizao.framework.web.domain.AjaxResult;
|
|
|
+import cn.ezhizao.framework.web.domain.BaseEntity;
|
|
|
import cn.ezhizao.framework.web.page.TableDataInfo;
|
|
|
import cn.ezhizao.project.business.company.domain.BizCompany;
|
|
|
import cn.ezhizao.project.business.company.service.IBizCompanyService;
|
|
@@ -239,108 +240,109 @@ public class WorkOrderCurrentController extends BaseController {
|
|
|
AtomicInteger failureNum = new AtomicInteger();
|
|
|
StringBuilder successMsg = new StringBuilder();
|
|
|
StringBuilder failureMsg = new StringBuilder();
|
|
|
- try {
|
|
|
|
|
|
- Long tenantId = getTenantId();
|
|
|
- //获取当前月
|
|
|
- SysCurrentMonth sysCurrentMonth = sysCurrentMonthService.getOne(new QueryWrapper<SysCurrentMonth>().eq("tenant_id", tenantId).eq("type", 0));
|
|
|
- String day = "-01";
|
|
|
- String workMonth = sysCurrentMonth.getYear() + "-" + sysCurrentMonth.getMonth() + day;
|
|
|
- ExcelUtil<EntrustVo> util = new ExcelUtil<>(EntrustVo.class);
|
|
|
- List<EntrustVo> entrustVos = util.importExcel(file.getInputStream());
|
|
|
- List<EntrustVo> newEntrustList = new ArrayList<>();
|
|
|
- entrustVos.forEach(f -> {
|
|
|
- ArrayList<Integer> objects = new ArrayList<>();
|
|
|
- if (f.getTaskName1().equals("是")) {
|
|
|
- objects.add(1);
|
|
|
- }
|
|
|
- if (f.getTaskName2().equals("是")) {
|
|
|
- objects.add(2);
|
|
|
- }
|
|
|
- if (f.getTaskName3().equals("是")) {
|
|
|
- objects.add(3);
|
|
|
- }
|
|
|
- f.setCount(objects);
|
|
|
- });
|
|
|
+ Long tenantId = getTenantId();
|
|
|
+ //获取当前月
|
|
|
+ SysCurrentMonth sysCurrentMonth = sysCurrentMonthService.getOne(new QueryWrapper<SysCurrentMonth>().eq("tenant_id", tenantId).eq("type", 0));
|
|
|
+ String day = "-01";
|
|
|
+ String workMonth = sysCurrentMonth.getYear() + "-" + sysCurrentMonth.getMonth() + day;
|
|
|
+ ExcelUtil<EntrustVo> util = new ExcelUtil<>(EntrustVo.class);
|
|
|
+ List<EntrustVo> entrustVos = util.importExcel(file.getInputStream());
|
|
|
+ List<EntrustVo> newEntrustList = new ArrayList<>();
|
|
|
+ entrustVos.forEach(f -> {
|
|
|
+ ArrayList<Integer> objects = new ArrayList<>();
|
|
|
+ if (f.getTaskName1().equals("是")) {
|
|
|
+ objects.add(1);
|
|
|
+ }
|
|
|
+ if (f.getTaskName2().equals("是")) {
|
|
|
+ objects.add(2);
|
|
|
+ }
|
|
|
+ if (f.getTaskName3().equals("是")) {
|
|
|
+ objects.add(3);
|
|
|
+ }
|
|
|
+ f.setCount(objects);
|
|
|
+ });
|
|
|
|
|
|
- for (EntrustVo entrustVo : entrustVos) {
|
|
|
- for (Integer integer : entrustVo.getCount()) {
|
|
|
- EntrustVo entrustVo1 = new EntrustVo();
|
|
|
- if (integer == 1) {
|
|
|
- entrustVo1.setTaskId(1);
|
|
|
- } else if (integer == 2) {
|
|
|
- entrustVo1.setTaskId(2);
|
|
|
- } else {
|
|
|
- entrustVo1.setTaskId(3);
|
|
|
- }
|
|
|
- entrustVo1.setNo(entrustVo.getNo());
|
|
|
- entrustVo1.setToEntrustName(entrustVo.getToEntrustName());
|
|
|
- entrustVo1.setCompanyName(entrustVo.getCompanyName());
|
|
|
- newEntrustList.add(entrustVo1);
|
|
|
+ for (EntrustVo entrustVo : entrustVos) {
|
|
|
+ for (Integer integer : entrustVo.getCount()) {
|
|
|
+ EntrustVo entrustVo1 = new EntrustVo();
|
|
|
+ if (integer == 1) {
|
|
|
+ entrustVo1.setTaskId(1);
|
|
|
+ } else if (integer == 2) {
|
|
|
+ entrustVo1.setTaskId(2);
|
|
|
+ } else {
|
|
|
+ entrustVo1.setTaskId(3);
|
|
|
}
|
|
|
+ entrustVo1.setNo(entrustVo.getNo());
|
|
|
+ entrustVo1.setToEntrustName(entrustVo.getToEntrustName());
|
|
|
+ entrustVo1.setCompanyName(entrustVo.getCompanyName());
|
|
|
+ newEntrustList.add(entrustVo1);
|
|
|
}
|
|
|
+ }
|
|
|
|
|
|
- newEntrustList.forEach(f -> {
|
|
|
- try {
|
|
|
- BizCompany company = bizCompanyService.getOne(new LambdaQueryWrapper<BizCompany>()
|
|
|
- .eq(BizCompany::getTenantId, tenantId)
|
|
|
- .eq(BizCompany::getName, f.getCompanyName().trim()));
|
|
|
- if (company == null) {
|
|
|
- failureNum.getAndIncrement();
|
|
|
- failureMsg.append("<br/>" + "序号为" + f.getNo() + "," + "客户 " + f.getCompanyName() + "不存在");
|
|
|
- } else {
|
|
|
- f.setCompanyId(company.getId());
|
|
|
- }
|
|
|
-
|
|
|
- } catch (Exception e) {
|
|
|
- throw new RuntimeException("导入错误");
|
|
|
+ newEntrustList.forEach(f -> {
|
|
|
+ try {
|
|
|
+ BizCompany company = bizCompanyService.getOne(new LambdaQueryWrapper<BizCompany>()
|
|
|
+ .eq(BizCompany::getTenantId, tenantId)
|
|
|
+ .eq(BizCompany::getName, f.getCompanyName().trim()));
|
|
|
+ if (company == null) {
|
|
|
+ failureNum.getAndIncrement();
|
|
|
+ failureMsg.append("<br/>" + "序号为" + f.getNo() + "," + "客户 " + f.getCompanyName() + "不存在");
|
|
|
+ } else {
|
|
|
+ f.setCompanyId(company.getId());
|
|
|
}
|
|
|
|
|
|
- });
|
|
|
- //获取工单
|
|
|
- for (EntrustVo e : newEntrustList) {
|
|
|
- List<BizWorkOrder> bizWorkOrders = bizWorkOrderService.list(new LambdaQueryWrapper<BizWorkOrder>()
|
|
|
- .eq(BizWorkOrder::getTenantId, tenantId)
|
|
|
- .eq(BizWorkOrder::getIsStop, 0)
|
|
|
- .eq(BizWorkOrder::getDeleted, 0)
|
|
|
- .eq(BizWorkOrder::getType, 1)
|
|
|
- .eq(BizWorkOrder::getTaskTypeId, e.getTaskId())
|
|
|
- .eq(BizWorkOrder::getCompanyId, e.getCompanyId()));
|
|
|
- if (bizWorkOrders == null || bizWorkOrders.size() == 0) {
|
|
|
- failureNum.getAndIncrement();
|
|
|
- String s = "";
|
|
|
- if (e.getTaskId() == 1) {
|
|
|
- s = "代理记账服务";
|
|
|
- } else if (e.getTaskId() == 2) {
|
|
|
- s = "社保代缴服务";
|
|
|
- } else {
|
|
|
- s = "公积金代缴服务";
|
|
|
- }
|
|
|
- failureMsg.append("<br/>" + "序号为" + e.getNo() + "," + "客户 " + e.getCompanyName() + " 没有" + s);
|
|
|
+ } catch (Exception e) {
|
|
|
+ throw new RuntimeException("导入错误");
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+ //获取工单
|
|
|
+ for (EntrustVo e : newEntrustList) {
|
|
|
+ List<BizWorkOrder> bizWorkOrders = bizWorkOrderService.list(new LambdaQueryWrapper<BizWorkOrder>()
|
|
|
+ .eq(BizWorkOrder::getTenantId, tenantId)
|
|
|
+ .eq(BizWorkOrder::getIsStop, 0)
|
|
|
+ .eq(BizWorkOrder::getDeleted, 0)
|
|
|
+ .eq(BizWorkOrder::getType, 1)
|
|
|
+ .eq(BizWorkOrder::getTaskTypeId, e.getTaskId())
|
|
|
+ .eq(BizWorkOrder::getCompanyId, e.getCompanyId()));
|
|
|
+ if (bizWorkOrders == null || bizWorkOrders.size() == 0) {
|
|
|
+ failureNum.getAndIncrement();
|
|
|
+ String s = "";
|
|
|
+ if (e.getTaskId() == 1) {
|
|
|
+ s = "代理记账服务";
|
|
|
+ } else if (e.getTaskId() == 2) {
|
|
|
+ s = "社保代缴服务";
|
|
|
} else {
|
|
|
- e.setWorkOrderIds(bizWorkOrders.stream().map(m -> m.getId()).collect(Collectors.toList()));
|
|
|
+ s = "公积金代缴服务";
|
|
|
}
|
|
|
+ failureMsg.append("<br/>" + "序号为").append(e.getNo()).append(",").append("客户 ").append(e.getCompanyName()).append(" 没有").append(s);
|
|
|
+ throw new ServiceException(failureMsg.toString());
|
|
|
+ } else {
|
|
|
+ e.setWorkOrderIds(bizWorkOrders.stream().map(BaseEntity::getId).collect(Collectors.toList()));
|
|
|
}
|
|
|
+ }
|
|
|
|
|
|
- //根据受委托方分组
|
|
|
- Map<String, List<EntrustVo>> map = newEntrustList.stream().collect(Collectors.groupingBy(e -> e.getToEntrustName()));
|
|
|
- for (String s : map.keySet()) {
|
|
|
- BizEntrust bizEntrust = new BizEntrust();
|
|
|
- Tenant one = tenantService.getOne(new LambdaQueryWrapper<Tenant>().eq(Tenant::getAccountName, s));
|
|
|
- bizEntrust.setToTenantId(one.getId());
|
|
|
- bizEntrust.setWorkMonth(Date.valueOf(workMonth));
|
|
|
- List<Long> workOrderIds = map.get(s).stream()
|
|
|
- .flatMap(e -> e.getWorkOrderIds().stream())
|
|
|
- .collect(Collectors.toList());
|
|
|
- bizEntrust.setWorkOrderIds(workOrderIds);
|
|
|
- this.addEntrust(bizEntrust);
|
|
|
+ //根据受委托方分组
|
|
|
+ Map<String, List<EntrustVo>> map = newEntrustList.stream().collect(Collectors.groupingBy(e -> e.getToEntrustName()));
|
|
|
+ for (String s : map.keySet()) {
|
|
|
+ BizEntrust bizEntrust = new BizEntrust();
|
|
|
+ Tenant one = tenantService.getOne(new LambdaQueryWrapper<Tenant>().eq(Tenant::getAccountName, s));
|
|
|
+ if(null == one){
|
|
|
+ failureMsg.append("<br/>" + "受委托方 ").append(s).append(",").append("在系统内不存在");
|
|
|
+ throw new ServiceException(failureMsg.toString());
|
|
|
}
|
|
|
- } catch (Exception e) {
|
|
|
- throw new RuntimeException("出现错误");
|
|
|
+ bizEntrust.setToTenantId(one.getId());
|
|
|
+ bizEntrust.setWorkMonth(Date.valueOf(workMonth));
|
|
|
+ List<Long> workOrderIds = map.get(s).stream()
|
|
|
+ .flatMap(e -> e.getWorkOrderIds().stream())
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ bizEntrust.setWorkOrderIds(workOrderIds);
|
|
|
+ this.addEntrust(bizEntrust);
|
|
|
}
|
|
|
|
|
|
|
|
|
- if (Integer.valueOf(failureNum.toString()) > 0) {
|
|
|
+ if (Integer.parseInt(failureNum.toString()) > 0) {
|
|
|
failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:");
|
|
|
throw new ServiceException(failureMsg.toString());
|
|
|
} else {
|