CUSTOMER_INFO_CHANGE_APPLY_SELF("个人客户信息修改申请"), | CUSTOMER_INFO_CHANGE_APPLY_SELF("个人客户信息修改申请"), | ||||
CUSTOMER_INFO_CHANGE_APPLY_UNIT("单位客户信息修改申请"), | CUSTOMER_INFO_CHANGE_APPLY_UNIT("单位客户信息修改申请"), | ||||
CUSTOMER_INFO_CHANGE_AUDIT("客户信息修改审核"), | CUSTOMER_INFO_CHANGE_AUDIT("客户信息修改审核"), | ||||
CUSTOMER_INFO_CHANGE_CANCEL("客户信息修改取消"), | |||||
//ETC通信费退费 | //ETC通信费退费 | ||||
ETC_TRANSACTION_APPLY("ETC通信费退费申请"), | ETC_TRANSACTION_APPLY("ETC通信费退费申请"), |
import cn.com.taiji.common.manager.ManagerException; | import cn.com.taiji.common.manager.ManagerException; | ||||
import cn.com.taiji.common.web.ApiResponse; | import cn.com.taiji.common.web.ApiResponse; | ||||
import cn.com.taiji.iaw.api.MyValidController; | import cn.com.taiji.iaw.api.MyValidController; | ||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoCancelReqDTO; | |||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoChangeApplyDTO; | import cn.com.taiji.iaw.dto.ass.CustomerInfoChangeApplyDTO; | ||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryReqDTO; | import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryReqDTO; | ||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryResDTO; | import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryResDTO; | ||||
manager.apply(reqDto); | manager.apply(reqDto); | ||||
return ApiResponse.success().setMessage("操作成功"); | return ApiResponse.success().setMessage("操作成功"); | ||||
} | } | ||||
@ApiOperation(value = "03-信息修改取消") | |||||
@PostMapping("/cancel") | |||||
public ApiResponse cancel(@Valid @RequestBody CustomerInfoCancelReqDTO reqDto) throws ManagerException { | |||||
manager.cancel(reqDto); | |||||
return ApiResponse.success().setMessage("操作成功"); | |||||
} | |||||
} | } |
package cn.com.taiji.iaw.dto.ass; | |||||
import cn.com.taiji.core.dto.AbstractBizRequestDTO; | |||||
import io.swagger.annotations.ApiModel; | |||||
import io.swagger.annotations.ApiModelProperty; | |||||
import lombok.Getter; | |||||
import lombok.Setter; | |||||
import javax.validation.constraints.NotBlank; | |||||
@ApiModel(description = "客户信息修改申请取消") | |||||
@Getter | |||||
@Setter | |||||
public class CustomerInfoCancelReqDTO extends AbstractBizRequestDTO { | |||||
@NotBlank(message = "订单号不能为空") | |||||
@ApiModelProperty(value = "订单号", required = true) | |||||
private String orderNo; | |||||
} |
package cn.com.taiji.iaw.manager.ass; | package cn.com.taiji.iaw.manager.ass; | ||||
import cn.com.taiji.common.manager.ManagerException; | import cn.com.taiji.common.manager.ManagerException; | ||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoCancelReqDTO; | |||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoChangeApplyDTO; | import cn.com.taiji.iaw.dto.ass.CustomerInfoChangeApplyDTO; | ||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryReqDTO; | import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryReqDTO; | ||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryResDTO; | import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryResDTO; | ||||
CustomerInfoQueryResDTO query(CustomerInfoQueryReqDTO reqDto) throws ManagerException; | CustomerInfoQueryResDTO query(CustomerInfoQueryReqDTO reqDto) throws ManagerException; | ||||
void apply(CustomerInfoChangeApplyDTO reqDto) throws ManagerException; | void apply(CustomerInfoChangeApplyDTO reqDto) throws ManagerException; | ||||
void cancel(CustomerInfoCancelReqDTO reqDto) throws ManagerException; | |||||
} | } |
import cn.com.taiji.core.entity.dict.log.OperateType; | import cn.com.taiji.core.entity.dict.log.OperateType; | ||||
import cn.com.taiji.core.manager.cache.RedisKeyGenerator; | import cn.com.taiji.core.manager.cache.RedisKeyGenerator; | ||||
import cn.com.taiji.core.manager.tools.minio.MinioUtil; | import cn.com.taiji.core.manager.tools.minio.MinioUtil; | ||||
import cn.com.taiji.core.model.comm.protocol.ias.ass.AssOrderCancelRequest; | |||||
import cn.com.taiji.core.model.comm.protocol.ias.ass.CommCustomerInfoChangeResponse; | import cn.com.taiji.core.model.comm.protocol.ias.ass.CommCustomerInfoChangeResponse; | ||||
import cn.com.taiji.core.model.comm.protocol.ias.ass.CustomerInfoChangeApplyRequest; | import cn.com.taiji.core.model.comm.protocol.ias.ass.CustomerInfoChangeApplyRequest; | ||||
import cn.com.taiji.core.repo.jpa.ass.AssOrderinfoRepo; | import cn.com.taiji.core.repo.jpa.ass.AssOrderinfoRepo; | ||||
import cn.com.taiji.core.repo.jpa.basic.QtkCustomerInfoRepo; | import cn.com.taiji.core.repo.jpa.basic.QtkCustomerInfoRepo; | ||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoCancelReqDTO; | |||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoChangeApplyDTO; | import cn.com.taiji.iaw.dto.ass.CustomerInfoChangeApplyDTO; | ||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryReqDTO; | import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryReqDTO; | ||||
import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryResDTO; | import cn.com.taiji.iaw.dto.ass.CustomerInfoQueryResDTO; | ||||
import org.springframework.beans.factory.annotation.Autowired; | import org.springframework.beans.factory.annotation.Autowired; | ||||
import org.springframework.stereotype.Service; | import org.springframework.stereotype.Service; | ||||
import java.util.ArrayList; | |||||
import java.util.List; | import java.util.List; | ||||
import java.util.stream.Collectors; | import java.util.stream.Collectors; | ||||
} | } | ||||
} | } | ||||
@Override | |||||
public void cancel(CustomerInfoCancelReqDTO reqDto) throws ManagerException { | |||||
AssOrderCancelRequest request = new AssOrderCancelRequest(); | |||||
request.setOrderNo(reqDto.getOrderNo()); | |||||
request.setReason("客户自行取消"); | |||||
request.setOpenId(findOpenIdByToken(reqDto.getAccessToken())); | |||||
request.setRefundStatus(0); | |||||
jsonPostRepeat(request); | |||||
persistOperateLog(OperateType.CUSTOMER_INFO_CHANGE_CANCEL, reqDto.getOrderNo(), reqDto.getOrderSource(), findOpenIdByToken(reqDto.getAccessToken()), "用户信息变更取消"); | |||||
} | |||||
// 校验 | // 校验 | ||||
private void valid(CustomerInfoChangeApplyDTO reqDto) throws ManagerException { | private void valid(CustomerInfoChangeApplyDTO reqDto) throws ManagerException { | ||||
reqDto.validate(); | reqDto.validate(); |
request.setOpenId(staff.getOpenId()); | request.setOpenId(staff.getOpenId()); | ||||
} | } | ||||
// 需要支付的情况下,进行退费相关校验 | // 需要支付的情况下,进行退费相关校验 | ||||
if (order.getNeedPay()) { | |||||
//渠道退费自行处理 | |||||
if (order.getNeedPay() && SourceType.CHANNEL != order.getOrderSource()) { | |||||
List<IssueOrderPay> pays = paymentDetections(request.getOrderNo()); | List<IssueOrderPay> pays = paymentDetections(request.getOrderNo()); | ||||
List<OrderPayStatus> payStatus = pays.stream().map(IssueOrderPay::getPayStatus).distinct().collect(Collectors.toList()); | List<OrderPayStatus> payStatus = pays.stream().map(IssueOrderPay::getPayStatus).distinct().collect(Collectors.toList()); | ||||
if (payStatus.contains(OrderPayStatus.PAYING)) | if (payStatus.contains(OrderPayStatus.PAYING)) |