bug
This commit is contained in:
parent
3f4b903f89
commit
c6337044ba
@ -4,6 +4,7 @@ import java.util.List;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaIgnore;
|
||||
import com.pusong.business.domain.vo.PsRefundVo;
|
||||
import com.pusong.business.service.IPsContractInfoService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.*;
|
||||
@ -40,6 +41,7 @@ import org.springframework.web.multipart.MultipartFile;
|
||||
public class PsContractPayController extends BaseController {
|
||||
|
||||
private final IPsContractPayService psContractPayService;
|
||||
private final IPsContractInfoService contractInfoService;
|
||||
|
||||
/**
|
||||
* 查询合同回款记录列表
|
||||
@ -87,7 +89,7 @@ public class PsContractPayController extends BaseController {
|
||||
@SaCheckPermission("business:contractPay:query")
|
||||
@PostMapping(value = "/refundFinish",consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
|
||||
public R<Void> refundFinish(@RequestPart("files") List<MultipartFile> files, @NotNull Long id) {
|
||||
psContractPayService.refundFinish(files,id);
|
||||
contractInfoService.dealReturn(psContractPayService.refundFinish(files,id));
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
|
@ -126,6 +126,11 @@ public interface IPsContractInfoService {
|
||||
*/
|
||||
ServiceScheduleVo queryScheduleByCode(String contractCode);
|
||||
|
||||
/**
|
||||
* 全部退款回退合同状态
|
||||
* @param contractCode
|
||||
*/
|
||||
void dealReturn(String contractCode);
|
||||
|
||||
/**
|
||||
* 查询符合条件的合同基本信息列表
|
||||
|
@ -83,7 +83,7 @@ public interface IPsContractPayService {
|
||||
* @param id 任务id
|
||||
* @return
|
||||
*/
|
||||
void refundFinish(List<MultipartFile> files, Long id);
|
||||
String refundFinish(List<MultipartFile> files, Long id);
|
||||
|
||||
/* *//**
|
||||
* 查询合同回款记录
|
||||
|
@ -32,11 +32,8 @@ public class ReturnApproverServiceImpl extends ApproverAbstractServiceImpl {
|
||||
public String approverType() {
|
||||
return ApproverTypeEnum.RETURN.getCode();
|
||||
}
|
||||
private final PsApproverRecordMapper recordMapper;
|
||||
private final PsContractPayMapper baseMapper;
|
||||
private final IPsContractInfoService contractInfoService;
|
||||
private final PsTaskMainMapper taskMainMapper;
|
||||
private final PsTaskAppointMapper taskAppointMapper;
|
||||
|
||||
|
||||
/**
|
||||
* 1 审批成功 退款审批成功
|
||||
@ -45,30 +42,6 @@ public class ReturnApproverServiceImpl extends ApproverAbstractServiceImpl {
|
||||
@Override
|
||||
public void success(PsApproverRecord psApproverRecord) {
|
||||
PsContractPay info = baseMapper.selectById(psApproverRecord.getBusinessId());
|
||||
PsContractInfo contract = contractInfoService.queryByCode(null, info.getContractCode(), null).get(0);
|
||||
//装填金额
|
||||
PsContractInfoVo vo = new PsContractInfoVo();
|
||||
vo.setContractCode(contract.getContractCode());
|
||||
vo.setContractAmount(contract.getContractAmount());
|
||||
contractInfoService.fillMoney(vo);
|
||||
//退款后金额小于0的话合同状态变为带回款
|
||||
if(vo.getResidualMoney().compareTo(info.getMoney()) <= 0){
|
||||
//合同回退到待回款
|
||||
PsContractInfo con = new PsContractInfo();
|
||||
con.setContractCode(contract.getContractCode());
|
||||
con.setContractStatus(ContractStatusEnum.CREATE.getCode());
|
||||
contractInfoService.updateByCode(con);
|
||||
//主任务作废
|
||||
taskMainMapper.update(Wrappers.<PsTaskMain>lambdaUpdate().set(PsTaskMain::getTaskStatus,TaskStatusEnum.CANCEL.getCode()).eq(PsTaskMain::getContractCode, contract.getContractCode()));
|
||||
//子任务作废
|
||||
List<PsTaskAppoint> list = taskAppointMapper.selectList(Wrappers.<PsTaskAppoint>lambdaQuery().select(PsTaskAppoint::getId).eq(PsTaskAppoint::getContractCode, contract.getContractCode()));
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
List<String> ids = list.stream().map(PsTaskAppoint::getId).map(Objects::toString).toList();
|
||||
taskAppointMapper.update(Wrappers.<PsTaskAppoint>lambdaUpdate().set(PsTaskAppoint::getAppointStatus,TaskStatusEnum.AppointStatusEnum.CANCEL.getCode()).eq(PsTaskAppoint::getContractCode, contract.getContractCode()));
|
||||
//子任务审批删除
|
||||
recordMapper.delete(Wrappers.<PsApproverRecord>lambdaQuery().in(PsApproverRecord::getBusinessId, ids));
|
||||
}
|
||||
}
|
||||
info.setPayStatus(PayStatusEnum.PAYING.getCode());
|
||||
baseMapper.updateById(info);
|
||||
}
|
||||
|
@ -9,9 +9,7 @@ import com.pusong.business.domain.bo.*;
|
||||
import com.pusong.business.domain.vo.*;
|
||||
import com.pusong.business.enums.*;
|
||||
import com.pusong.business.enums.TaskStatusEnum.*;
|
||||
import com.pusong.business.mapper.PsContractBusinessMapper;
|
||||
import com.pusong.business.mapper.PsTaskAppointMapper;
|
||||
import com.pusong.business.mapper.PsTaskMainMapper;
|
||||
import com.pusong.business.mapper.*;
|
||||
import com.pusong.business.service.*;
|
||||
import com.pusong.business.service.approver.ApproverContainer;
|
||||
import com.pusong.business.service.approver.ApproverService;
|
||||
@ -38,7 +36,6 @@ import jodd.util.StringUtil;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.pusong.business.mapper.PsContractInfoMapper;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.io.File;
|
||||
@ -77,6 +74,7 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
||||
private final IPsTaskService taskMainService;
|
||||
private final PsTaskMainMapper taskMainMapper;
|
||||
private final PsTaskAppointMapper taskAppointMapper;
|
||||
private final PsApproverRecordMapper recordMapper;
|
||||
|
||||
private final ISysDictDataService dictDataService;
|
||||
private final IPsApproverRecordService approverRecordService;
|
||||
@ -750,7 +748,32 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
||||
}
|
||||
|
||||
|
||||
|
||||
public void dealReturn(String contractCode){
|
||||
PsContractInfo contract = this.queryByCode(null, contractCode, null).get(0);
|
||||
//装填金额
|
||||
PsContractInfoVo vo = new PsContractInfoVo();
|
||||
vo.setContractCode(contract.getContractCode());
|
||||
vo.setContractAmount(contract.getContractAmount());
|
||||
this.fillMoney(vo);
|
||||
//退款后金额小于0的话合同状态变为带回款
|
||||
if(vo.getPayMoney().compareTo(BigDecimal.ZERO) <= 0){
|
||||
//合同回退到待回款
|
||||
PsContractInfo con = new PsContractInfo();
|
||||
con.setContractCode(contract.getContractCode());
|
||||
con.setContractStatus(ContractStatusEnum.CREATE.getCode());
|
||||
this.updateByCode(con);
|
||||
//主任务作废
|
||||
taskMainMapper.update(Wrappers.<PsTaskMain>lambdaUpdate().set(PsTaskMain::getTaskStatus,TaskStatusEnum.CANCEL.getCode()).eq(PsTaskMain::getContractCode, contract.getContractCode()));
|
||||
//子任务作废
|
||||
List<PsTaskAppoint> list = taskAppointMapper.selectList(Wrappers.<PsTaskAppoint>lambdaQuery().select(PsTaskAppoint::getId).eq(PsTaskAppoint::getContractCode, contract.getContractCode()));
|
||||
if(CollectionUtils.isNotEmpty(list)){
|
||||
List<String> ids = list.stream().map(PsTaskAppoint::getId).map(Objects::toString).toList();
|
||||
taskAppointMapper.update(Wrappers.<PsTaskAppoint>lambdaUpdate().set(PsTaskAppoint::getAppointStatus,TaskStatusEnum.AppointStatusEnum.CANCEL.getCode()).eq(PsTaskAppoint::getContractCode, contract.getContractCode()));
|
||||
//子任务审批删除
|
||||
recordMapper.delete(Wrappers.<PsApproverRecord>lambdaQuery().in(PsApproverRecord::getBusinessId, ids));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询合同基本信息
|
||||
|
@ -2,10 +2,10 @@ package com.pusong.business.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||
import com.pusong.business.domain.*;
|
||||
import com.pusong.business.domain.vo.PsContractInfoVo;
|
||||
import com.pusong.business.domain.vo.PsRefundVo;
|
||||
import com.pusong.business.enums.ApproverTypeEnum;
|
||||
import com.pusong.business.enums.PayBuinessStatusEnum;
|
||||
import com.pusong.business.enums.PayStatusEnum;
|
||||
import com.pusong.business.enums.*;
|
||||
import com.pusong.business.service.IPsApproverRecordService;
|
||||
import com.pusong.business.service.approver.ApproverContainer;
|
||||
import com.pusong.business.service.approver.ApproverService;
|
||||
@ -24,7 +24,6 @@ import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.pusong.business.domain.bo.PsContractPayBo;
|
||||
import com.pusong.business.domain.vo.PsContractPayVo;
|
||||
import com.pusong.business.domain.PsContractPay;
|
||||
import com.pusong.business.mapper.PsContractPayMapper;
|
||||
import com.pusong.business.service.IPsContractPayService;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@ -199,7 +198,7 @@ public class PsContractPayServiceImpl implements IPsContractPayService {
|
||||
* @param id 任务id
|
||||
* @return
|
||||
*/
|
||||
public void refundFinish(List<MultipartFile> files, Long id){
|
||||
public String refundFinish(List<MultipartFile> files, Long id){
|
||||
PsContractPay info = baseMapper.selectById(id);
|
||||
List<String> payCertifications = new ArrayList<>();
|
||||
for(MultipartFile file : files){
|
||||
@ -210,6 +209,7 @@ public class PsContractPayServiceImpl implements IPsContractPayService {
|
||||
info.setPayCertification(StringUtils.join(payCertifications,","));
|
||||
info.setPayStatus(PayStatusEnum.SUCCESS.getCode());
|
||||
baseMapper.updateById(info);
|
||||
return info.getContractCode();
|
||||
}
|
||||
|
||||
/* *//**
|
||||
|
@ -77,7 +77,7 @@ public class PsCustomInfoServiceImpl implements IPsCustomInfoService {
|
||||
public List<Map<String,Object>> listByLoginUser() {
|
||||
//查询客户基本信息
|
||||
List<PsCustomInfo> list = baseMapper.selectList(new QueryWrapper<PsCustomInfo>().select("id", "custom_name")
|
||||
.lambda().eq(PsCustomInfo::getDelFlag, 0).isNotNull(PsCustomInfo::getCustomName));
|
||||
.lambda().eq(PsCustomInfo::getDelFlag, 0).isNotNull(PsCustomInfo::getCustomName).ne(PsCustomInfo::getCustomName,"").ne(PsCustomInfo::getCustomName,"无"));
|
||||
List<Map<String,Object>> listmap = new ArrayList<>();
|
||||
list.forEach(item->{
|
||||
Map<String,Object> map = new HashMap<>();
|
||||
|
Loading…
Reference in New Issue
Block a user