Commit ac340a09 authored by hezhuozhi's avatar hezhuozhi

还款管理

parent 0cdd8d93
package com.yeejoin.amos.boot.module.hygf.api.dto;
import lombok.Data;
import java.util.List;
@Data
public class RepaymentBatchDto {
private List<String> sequenceNbrList;
}
package com.yeejoin.amos.boot.module.hygf.biz.controller; package com.yeejoin.amos.boot.module.hygf.biz.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.hygf.api.Enum.RepaymentCronSendStateEnum; import com.yeejoin.amos.boot.module.hygf.api.dto.RepaymentBatchDto;
import com.yeejoin.amos.boot.module.hygf.api.Enum.RepaymentMessageStateEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.RepaymentRepayStateEnum;
import com.yeejoin.amos.boot.module.hygf.api.dto.RepaymentDto; import com.yeejoin.amos.boot.module.hygf.api.dto.RepaymentDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.Repayment; import com.yeejoin.amos.boot.module.hygf.api.entity.Repayment;
import com.yeejoin.amos.boot.module.hygf.api.util.FileUtil; import com.yeejoin.amos.boot.module.hygf.api.util.FileUtil;
...@@ -21,6 +20,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseHelper; ...@@ -21,6 +20,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel; import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
...@@ -109,8 +109,8 @@ public class RepaymentController extends BaseController { ...@@ -109,8 +109,8 @@ public class RepaymentController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/batchConfirmMessageState") @PostMapping(value = "/batchConfirmMessageState")
@ApiOperation(httpMethod = "POST", value = "根据sequenceNbr批量确认消息", notes = "根据sequenceNbr批量确认消息") @ApiOperation(httpMethod = "POST", value = "根据sequenceNbr批量确认消息", notes = "根据sequenceNbr批量确认消息")
public ResponseModel<?> batchConfirmMessageState(@RequestBody List<Long> sequenceNbrList) { public ResponseModel<?> batchConfirmMessageState(@RequestBody RepaymentBatchDto repaymentBatchDto) {
repaymentService.batchConfirmMessageState(sequenceNbrList); repaymentService.batchConfirmMessageState(repaymentBatchDto.getSequenceNbrList());
return ResponseHelper.buildResponse(null); return ResponseHelper.buildResponse(null);
} }
...@@ -122,8 +122,8 @@ public class RepaymentController extends BaseController { ...@@ -122,8 +122,8 @@ public class RepaymentController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/batchRepay") @PostMapping(value = "/batchRepay")
@ApiOperation(httpMethod = "POST", value = "根据sequenceNbr批量还款", notes = "根据sequenceNbr批量还款") @ApiOperation(httpMethod = "POST", value = "根据sequenceNbr批量还款", notes = "根据sequenceNbr批量还款")
public ResponseModel<?> batchRepay(@RequestBody List<Long> sequenceNbrList) { public ResponseModel<?> batchRepay(@RequestBody RepaymentBatchDto repaymentBatchDto) {
repaymentService.batchRepay(sequenceNbrList); repaymentService.batchRepay(repaymentBatchDto.getSequenceNbrList());
return ResponseHelper.buildResponse(null); return ResponseHelper.buildResponse(null);
} }
...@@ -135,8 +135,15 @@ public class RepaymentController extends BaseController { ...@@ -135,8 +135,15 @@ public class RepaymentController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "batchDelete") @PostMapping(value = "batchDelete")
@ApiOperation(httpMethod = "POST", value = "根据sequenceNbr批量删除", notes = "根据sequenceNbr批量删除") @ApiOperation(httpMethod = "POST", value = "根据sequenceNbr批量删除", notes = "根据sequenceNbr批量删除")
public ResponseModel<Boolean> deleteBySequenceNbr(@RequestBody List<Long> sequenceNbrList) { public ResponseModel<Boolean> deleteBySequenceNbr(@RequestBody RepaymentBatchDto repaymentBatchDto) {
return ResponseHelper.buildResponse(repaymentService.deleteBatchSeq(sequenceNbrList)); List<String> sequenceNbrList = repaymentBatchDto.getSequenceNbrList();
List<Long> list = new ArrayList<>();
if (CollectionUtil.isNotEmpty(sequenceNbrList)) {
for (String s : sequenceNbrList) {
list.add(Long.valueOf(s));
}
}
return ResponseHelper.buildResponse(repaymentService.deleteBatchSeq(list));
} }
/** /**
...@@ -148,8 +155,7 @@ public class RepaymentController extends BaseController { ...@@ -148,8 +155,7 @@ public class RepaymentController extends BaseController {
@PostMapping(value = "importRepaymentExcel") @PostMapping(value = "importRepaymentExcel")
@ApiOperation(httpMethod = "POST", value = "导入还款模板Excel", notes = "导入还款模板Excel") @ApiOperation(httpMethod = "POST", value = "导入还款模板Excel", notes = "导入还款模板Excel")
public ResponseModel<?> importRepaymentExcel(@RequestPart("file") MultipartFile file) { public ResponseModel<?> importRepaymentExcel(@RequestPart("file") MultipartFile file) {
AgencyUserModel userInfo = getUserInfo(); repaymentService.importRepaymentExcel(file);
repaymentService.importRepaymentExcel(file, userInfo);
return ResponseHelper.buildResponse(null); return ResponseHelper.buildResponse(null);
} }
...@@ -161,8 +167,8 @@ public class RepaymentController extends BaseController { ...@@ -161,8 +167,8 @@ public class RepaymentController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY) @TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "exportRepaymentExcel") @PostMapping(value = "exportRepaymentExcel")
@ApiOperation(httpMethod = "POST", value = "导出还款模板Excel", notes = "导出还款模板Excel") @ApiOperation(httpMethod = "POST", value = "导出还款模板Excel", notes = "导出还款模板Excel")
public ResponseModel<?> exportRepaymentExcel(@RequestBody List<Long> sequenceNbrList, HttpServletResponse response) { public ResponseModel<?> exportRepaymentExcel(@RequestBody RepaymentBatchDto repaymentBatchDto, HttpServletResponse response) {
repaymentService.exportRepaymentExcel(sequenceNbrList, response); repaymentService.exportRepaymentExcel(repaymentBatchDto.getSequenceNbrList(), response);
return ResponseHelper.buildResponse(null); return ResponseHelper.buildResponse(null);
} }
......
...@@ -13,15 +13,15 @@ import com.github.pagehelper.PageInfo; ...@@ -13,15 +13,15 @@ import com.github.pagehelper.PageInfo;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.ExcelUtils; import com.yeejoin.amos.boot.biz.common.utils.ExcelUtils;
import com.yeejoin.amos.boot.module.hygf.api.Enum.*; import com.yeejoin.amos.boot.module.hygf.api.Enum.*;
import com.yeejoin.amos.boot.module.hygf.api.dto.DropDown;
import com.yeejoin.amos.boot.module.hygf.api.dto.RepaymentDto; import com.yeejoin.amos.boot.module.hygf.api.dto.RepaymentDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto; import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.PrivilegeCompany; import com.yeejoin.amos.boot.module.hygf.api.entity.PrivilegeCompany;
import com.yeejoin.amos.boot.module.hygf.api.entity.Repayment; import com.yeejoin.amos.boot.module.hygf.api.entity.Repayment;
import com.yeejoin.amos.boot.module.hygf.api.mapper.JpStationMapper;
import com.yeejoin.amos.boot.module.hygf.api.mapper.RepaymentMapper; import com.yeejoin.amos.boot.module.hygf.api.mapper.RepaymentMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IRepaymentService; import com.yeejoin.amos.boot.module.hygf.api.service.IRepaymentService;
import com.yeejoin.amos.boot.module.hygf.biz.vo.RepaymentExcelVO; import com.yeejoin.amos.boot.module.hygf.biz.vo.RepaymentExcelVO;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled; import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -48,6 +48,8 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R ...@@ -48,6 +48,8 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R
CommonServiceImpl commonService; CommonServiceImpl commonService;
@Autowired @Autowired
RepaymentMapper repaymentMapper; RepaymentMapper repaymentMapper;
@Autowired
JpStationMapper jpStationMapper;
public Page<RepaymentDto> queryForRepaymentPage(int current, int size) { public Page<RepaymentDto> queryForRepaymentPage(int current, int size) {
PageHelper.startPage(current, size); PageHelper.startPage(current, size);
...@@ -58,7 +60,7 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R ...@@ -58,7 +60,7 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R
//为了前端页面展示 //为了前端页面展示
for (RepaymentDto repaymentDto : pagesList) { for (RepaymentDto repaymentDto : pagesList) {
repaymentDto.setMessageStateStr(RepaymentMessageStateEnum.getByCode(repaymentDto.getMessageState()).getRemark()); repaymentDto.setMessageStateStr(RepaymentMessageStateEnum.getByCode(repaymentDto.getMessageState()).getRemark());
repaymentDto.setRepayStateStr(RepaymentRepayStateEnum.getByCode(repaymentDto.getMessageState()).getRemark()); repaymentDto.setRepayStateStr(RepaymentRepayStateEnum.getByCode(repaymentDto.getRepayState()).getRemark());
} }
} }
Page<RepaymentDto> page = new Page<>(); Page<RepaymentDto> page = new Page<>();
...@@ -70,23 +72,23 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R ...@@ -70,23 +72,23 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R
} }
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void batchConfirmMessageState(List<Long> sequenceNbrList) { public void batchConfirmMessageState(List<String> sequenceNbrList) {
if (CollectionUtil.isNotEmpty(sequenceNbrList)) { if (CollectionUtil.isNotEmpty(sequenceNbrList)) {
LambdaUpdateWrapper<Repayment> updateWrapper = new LambdaUpdateWrapper<>(); LambdaUpdateWrapper<Repayment> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(Repayment::getMessageState, RepaymentMessageStateEnum.CONFIRM.getCode()) updateWrapper.set(Repayment::getMessageState, RepaymentMessageStateEnum.CONFIRM.getCode())
.set(Repayment::getCronSendState, RepaymentCronSendStateEnum.UN_SEND.getCode()) .set(Repayment::getCronSendState, RepaymentCronSendStateEnum.UN_SEND.getCode())
.in(Repayment::getSequenceNbr, sequenceNbrList); .in(Repayment::getSequenceNbr, sequenceNbrList);
this.update(updateWrapper); this.update(updateWrapper);
for (Long sequenceNbr : sequenceNbrList) { for (String sequenceNbr : sequenceNbrList) {
//更新工作台信息 //更新工作台信息
updateTaskModel(String.valueOf(sequenceNbr)); updateTaskModel(sequenceNbr);
} }
} }
} }
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void batchRepay(List<Long> sequenceNbrList) { public void batchRepay(List<String> sequenceNbrList) {
if (CollectionUtil.isNotEmpty(sequenceNbrList)) { if (CollectionUtil.isNotEmpty(sequenceNbrList)) {
LambdaUpdateWrapper<Repayment> updateWrapper = new LambdaUpdateWrapper<>(); LambdaUpdateWrapper<Repayment> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(Repayment::getRepayState, RepaymentRepayStateEnum.REPAY.getCode()) updateWrapper.set(Repayment::getRepayState, RepaymentRepayStateEnum.REPAY.getCode())
...@@ -161,11 +163,11 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R ...@@ -161,11 +163,11 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R
} }
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void importRepaymentExcel(MultipartFile file, AgencyUserModel userInfo) { public void importRepaymentExcel(MultipartFile file) {
//获取当前用户权限的公司 //获取当前用户权限的公司
try { try {
List<CompanyModel> companys = userInfo.getCompanys(); List<DropDown> region = jpStationMapper.getRegion(null);
if (CollectionUtil.isEmpty(companys)) { if (CollectionUtil.isEmpty(region)) {
throw new BadRequest("该用户没有公司"); throw new BadRequest("该用户没有公司");
} }
ExcelReader reader = ExcelUtil.getReader(file.getInputStream()); ExcelReader reader = ExcelUtil.getReader(file.getInputStream());
...@@ -177,11 +179,14 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R ...@@ -177,11 +179,14 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R
} }
Repayment repayment = new Repayment(); Repayment repayment = new Repayment();
String companyName = (String) objects.get(0); String companyName = (String) objects.get(0);
for (CompanyModel company : companys) { for (DropDown dropDown : region) {
if (company.getCompanyName().equals(companyName)) { if (dropDown.getName().equals(companyName)) {
repayment.setCompanyName(companyName); PrivilegeCompany privilegeCompany = repaymentMapper.getPrivilegeCompanyByOrgCode(dropDown.getOrgCode());
repayment.setCompanyId(company.getSequenceNbr()); if (Objects.nonNull(privilegeCompany)) {
repayment.setRegionalCompaniesCode(String.valueOf(company.getCompanyOrgCode())); repayment.setRegionalCompaniesCode(dropDown.getOrgCode());
repayment.setCompanyId(privilegeCompany.getSequenceNbr());
repayment.setCompanyName(privilegeCompany.getCompanyName());
}
} }
} }
if (StrUtil.isEmpty(repayment.getCompanyName())) { if (StrUtil.isEmpty(repayment.getCompanyName())) {
...@@ -218,7 +223,7 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R ...@@ -218,7 +223,7 @@ public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, R
} }
} }
public void exportRepaymentExcel(List<Long> sequenceNbrList, HttpServletResponse response) { public void exportRepaymentExcel(List<String> sequenceNbrList, HttpServletResponse response) {
LambdaQueryWrapper<Repayment> wrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<Repayment> wrapper = new LambdaQueryWrapper<>();
//如果是空值导出全部 //如果是空值导出全部
if (CollectionUtil.isNotEmpty(sequenceNbrList)) { if (CollectionUtil.isNotEmpty(sequenceNbrList)) {
......
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