| | |
| | | import cn.iocoder.yudao.module.aftersales.dal.mysql.visit.AfterSaleVisitMapper; |
| | | import cn.iocoder.yudao.module.aftersales.enums.AfterSaleTicketStatusEnum; |
| | | import cn.iocoder.yudao.module.aftersales.enums.AfterSaleVisitStatusEnum; |
| | | import cn.iocoder.yudao.module.aftersales.enums.AfterSaleVisitTypeEnum; |
| | | import cn.iocoder.yudao.module.aftersales.service.ticket.AfterSaleTicketFlowService; |
| | | import cn.iocoder.yudao.module.system.api.storage.StorageAttachmentApi; |
| | | import jakarta.annotation.Resource; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | private AfterSaleTicketMapper ticketMapper; |
| | | @Resource |
| | | private StorageAttachmentApi storageAttachmentApi; |
| | | @Resource |
| | | private AfterSaleTicketFlowService ticketFlowService; |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | |
| | | .setVisitStatus(AfterSaleVisitStatusEnum.WAITING.getStatus()); |
| | | } |
| | | ticketMapper.updateById(update); |
| | | // 5. 记录流转:回访通过则保持已完结,不满意/复发则退回处理中 |
| | | Integer toStatus = satisfied && !recurred |
| | | ? AfterSaleTicketStatusEnum.COMPLETED.getStatus() |
| | | : AfterSaleTicketStatusEnum.PROCESSING.getStatus(); |
| | | ticketFlowService.record(ticket.getId(), AfterSaleTicketFlowService.ACTION_VISIT, "登记回访", |
| | | ticket.getStatus(), toStatus, |
| | | "登记回访:" + AfterSaleVisitTypeEnum.getNameByType(createReqVO.getVisitType()) |
| | | + ",客户" + (satisfied ? "满意" : "不满意") |
| | | + ",问题" + (recurred ? "复发" : "未复发")); |
| | | return visitDO.getId(); |
| | | } |
| | | |