This commit is contained in:
xuyuncong 2025-12-01 17:16:01 +08:00
parent 741444fb62
commit 3c98fad235
9 changed files with 39 additions and 31 deletions

View File

@ -55,4 +55,7 @@ public class RepairRecords extends TenantBaseDO {
*/
private String otherData;
/** 输入备注 */
private String inputRemark;
}

View File

@ -36,7 +36,7 @@ public interface RepairRecordsService extends IService<RepairRecords> {
* @return void
**/
void saveRepairRecord(String ticketId, String repairItemId, String type, String remark, String images, String otherData);
void saveRepairRecord(String ticketId, String repairItemId, String type, String remark, String inputRemark, String images, String otherData);
/**
* 根据条件查询维修记录

View File

@ -85,7 +85,7 @@ public class RepairRecordsServiceImpl extends ServiceImpl<RepairRecordsMapper, R
**/
@Override
public void saveRepairRecord(String ticketId, String repairItemId, String type, String remark, String images, String otherData) {
public void saveRepairRecord(String ticketId, String repairItemId, String type, String remark,String inputRemark, String images, String otherData) {
//获取当前登录用户
Long userId = SecurityFrameworkUtils.getLoginUserId();
AdminUserRespDTO loginUser = userApi.getUser(userId);

View File

@ -796,8 +796,9 @@ public class DlRepairTicketsController {
@GetMapping("/pickCar")
public CommonResult<?> pickCar(@RequestParam("id") String id,
@RequestParam(value = "image", required = false) String image,
@RequestParam(value = "remark", required = false) String remark) {
dlRepairTicketsService.pickCar(id, image, remark);
@RequestParam(value = "remark", required = false) String remark,
@RequestParam(value = "inputRemark", required = false) String inputRemark) {
dlRepairTicketsService.pickCar(id, image, remark,inputRemark);
return CommonResult.ok();
}

View File

@ -288,7 +288,7 @@ public interface DlRepairTicketsService extends IService<DlRepairTickets> {
* @return void
**/
void pickCar(String id, String image, String remark);
void pickCar(String id, String image, String remark, String inputRemark);
/**
* @Author

View File

@ -224,7 +224,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
if (ObjectUtil.isEmpty(ticketsRespVO.getAdviserId())) {
throw exception0(500, "服务顾问为空");
}
if(StringUtils.isEmpty(ticketsRespVO.getTicketType())) {
if (StringUtils.isEmpty(ticketsRespVO.getTicketType())) {
ticketsRespVO.setTicketType(RepairConstants.REPAIR_TYPE_A);
}
// ticketsRespVO.getItemList().forEach(item -> {
@ -313,7 +313,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
List<DlRepairTitem> itemList = ticketsRespVO.getItemList();
List<DlRepairTitem> collect = itemList.stream().filter(item -> item.getItemType().equals("02")).collect(Collectors.toList());
ticketsRespVO.setPartStatus(CollectionUtil.isEmpty(collect) ? "01" : "02");
if(RepairConstants.REPAIR_TYPE_A.equals(ticketsRespVO.getTicketType())) {
if (RepairConstants.REPAIR_TYPE_A.equals(ticketsRespVO.getTicketType())) {
// 工单进行状态 默认是等待接单
ticketsRespVO.setTicketsWorkStatus(TicketsWorkStatusEnum.WAITING_RECEIVING.getCode());
// 工单状态 默认是待派工
@ -342,7 +342,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
item.setSaleId(loginUser.getId());
item.setSaleName(loginUser.getInfo().get("nickname"));
}
if(RepairConstants.REPAIR_TYPE_A.equals(ticketsRespVO.getTicketType())) {
if (RepairConstants.REPAIR_TYPE_A.equals(ticketsRespVO.getTicketType())) {
if ("01".equals(item.getItemType())) {
//维修项目,初始状态待派工
item.setItemStatus(TicketsItemStatusEnum.WAITING_WORK.getCode());
@ -350,7 +350,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
//维修配件初始状态待领料
item.setItemStatus(TicketsItemStatusEnum.WAITING_RECEIVE.getCode());
}
}else {
} else {
if ("01".equals(item.getItemType())) {
//维修项目,初始状态已完成
item.setItemStatus(TicketsItemStatusEnum.DONE.getCode());
@ -402,7 +402,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
}
repairOrderInfoService.saveOrderInfo(repairOrderInfo);
//最后记录操作日志--创建工单
repairRecordsService.saveRepairRecord(ticketsRespVO.getId(), null, RecordTypeEnum.CJGD.getCode(), "创建工单", ticketsRespVO.getImage());
repairRecordsService.saveRepairRecord(ticketsRespVO.getId(), null, RecordTypeEnum.CJGD.getCode(), "创建工单", ticketsRespVO.getInputRemark(), ticketsRespVO.getImage(), null);
// 通知客户
// 构建消息
@ -509,18 +509,19 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
// 查询B子表
List<DlRepairTitemReqVO> BItems = new ArrayList<>();
if (CollectionUtil.isNotEmpty(bIds)){
List<DlRepairTitem> BItemList = titemService.list(new LambdaQueryWrapper<DlRepairTitem>().in(DlRepairTitem::getTicketId, bIds));
BItems = BItemList.stream().map(item -> BeanUtil.toBean(item, DlRepairTitemReqVO.class)).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(bIds)) {
List<DlRepairTitem> BItemList = titemService.list(new LambdaQueryWrapper<DlRepairTitem>().in(DlRepairTitem::getTicketId, bIds));
BItems = BItemList.stream().map(item -> BeanUtil.toBean(item, DlRepairTitemReqVO.class)).collect(Collectors.toList());
//处理项目 取项目
List<DlRepairTitemReqVO> BProject = BItems.stream().filter(item -> item.getItemType().equals("01")).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(BProject)) {
Set<String> ids = BProject.stream().map(DlRepairTitemReqVO::getProjectId).collect(Collectors.toSet());
List<RepairProject> repairProjects = projectService.listByIds(ids);
BItems.forEach(item -> repairProjects.stream().filter(i -> i.getId().equals(item.getProjectId())).findFirst().ifPresent(item::setProject));
//处理项目 取项目
List<DlRepairTitemReqVO> BProject = BItems.stream().filter(item -> item.getItemType().equals("01")).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(BProject)) {
Set<String> ids = BProject.stream().map(DlRepairTitemReqVO::getProjectId).collect(Collectors.toSet());
List<RepairProject> repairProjects = projectService.listByIds(ids);
BItems.forEach(item -> repairProjects.stream().filter(i -> i.getId().equals(item.getProjectId())).findFirst().ifPresent(item::setProject));
}
result.setBProjects(BProject);
}
result.setBProjects(BProject);}
if (ifApp) {
//app新增逻辑
if (CollectionUtil.isNotEmpty(projects)) {
@ -927,7 +928,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
String json = JSON.toJSONString(vo);
//添加维修记录
repairRecordsService.saveRepairRecord(vo.getTicketId(), null, RecordTypeEnum.JSSQ.getCode(), "结算申请", null, json);
repairRecordsService.saveRepairRecord(vo.getTicketId(), null, RecordTypeEnum.JSSQ.getCode(), "结算申请", null, null, json);
/*获取字典 判断是否自动审核通过该结算申请*/
DictDataRespDTO repairSettlementReview = dictDataApi.getDictData(BASE_BUSINESS_CONFIG, "repair_settlement_review");
@ -939,7 +940,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
// 如果是自动审核直接修改支付状态
if (ifReview) {
//添加维修记录
repairRecordsService.saveRepairRecord(vo.getTicketId(), null, RecordTypeEnum.JSSP.getCode(), "自动结算审批", null, json);
repairRecordsService.saveRepairRecord(vo.getTicketId(), null, RecordTypeEnum.JSSP.getCode(), "自动结算审批", null, null, json);
// 修改工单支付状态为待收款
update(Wrappers.<DlRepairTickets>lambdaUpdate()
@ -970,7 +971,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
String json = JSON.toJSONString(vo);
//添加维修记录
repairRecordsService.saveRepairRecord(vo.getTicketId(), null, RecordTypeEnum.JSSP.getCode(), "结算审批", null, json);
repairRecordsService.saveRepairRecord(vo.getTicketId(), null, RecordTypeEnum.JSSP.getCode(), "结算审批", null, null, json);
// 修改工单支付状态为待收款
update(Wrappers.<DlRepairTickets>lambdaUpdate()
@ -1094,7 +1095,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
.set(StringUtils.isNotEmpty(repairTicketsRespVO.getPayConfirmRemark()), DlRepairTickets::getPayConfirmRemark, repairTicketsRespVO.getPayConfirmRemark()));
//添加记录
repairRecordsService.saveRepairRecord(repairTicketsRespVO.getId(), null, RecordTypeEnum.QRSK.getCode(), RecordTypeEnum.QRSK.getName(), null, null);
repairRecordsService.saveRepairRecord(repairTicketsRespVO.getId(), null, RecordTypeEnum.QRSK.getCode(), RecordTypeEnum.QRSK.getName(), null, null, null);
}
/**
@ -1110,7 +1111,7 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
.eq(DlRepairTickets::getId, repairTicketsRespVO.getId())
.set(DlRepairTickets::getPayStatus, "04"));
// 添加工单记录
repairRecordsService.saveRepairRecord(repairTicketsRespVO.getId(), null, RecordTypeEnum.FJS.getCode(), RecordTypeEnum.FJS.getName(), null, null);
repairRecordsService.saveRepairRecord(repairTicketsRespVO.getId(), null, RecordTypeEnum.FJS.getCode(), RecordTypeEnum.FJS.getName(), null, null, null);
}
/**
@ -1404,9 +1405,9 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
* @param jssqFinished 结算申请完成状态
*/
private void handleSpecialTeams(Map<String, TicketTeamProgressWithItemsVO> progressMap,
Map<String, List<DlRepairTitemRespVO>> teamItemsMap,
String ticketId, boolean zjFinished, boolean skFinished,
boolean jsgdFinished, boolean jcFinished, boolean jssqFinished) {
Map<String, List<DlRepairTitemRespVO>> teamItemsMap,
String ticketId, boolean zjFinished, boolean skFinished,
boolean jsgdFinished, boolean jcFinished, boolean jssqFinished) {
// 处理总检班组
String zjWorkType = "zj"; // 总检班组编码
String zjWorkTypeName = "总检"; // 总检班组名称
@ -3537,14 +3538,14 @@ public class DlRepairTicketsServiceImpl extends ServiceImpl<DlRepairTicketsMappe
*/
@Override
@DSTransactional
public void pickCar(String id, String image, String remark) {
public void pickCar(String id, String image, String remark, String inputRemark) {
/* 1.修改工单表接车状态为已接车*/
baseMapper.update(Wrappers.<DlRepairTickets>lambdaUpdate()
.eq(DlRepairTickets::getId, id)
.set(DlRepairTickets::getIsPickCar, 1));
/* 2.步骤表里添加接车*/
repairRecordsService.saveRepairRecord(id, null, RecordTypeEnum.PICKCAR.getCode(), "接车", image);
repairRecordsService.saveRepairRecord(id, null, RecordTypeEnum.PICKCAR.getCode(), "接车", inputRemark, image, null);
}
/**

View File

@ -117,4 +117,6 @@ public class DlRepairTicketsRespVO extends DlRepairTickets {
private String billedRemark;
private Integer hasChildTickets;
private List<DlRepairTicketsRespVO> bTickets;
/** 备注 */
private String inputRemark;
}

View File

@ -18,6 +18,7 @@
<result column="deal_user_id" property="dealUserId"/>
<result column="creator" property="creator"/>
<result column="create_time" property="createTime"/>
<result column="input_remark" property="inputRemark"/>
<collection property="itemList" ofType="cn.iocoder.yudao.module.base.entity.RepairRecordsItem" columnPrefix="item_">
<id column="id" property="id"/>
<result column="record_id" property="recordId"/>

View File

@ -871,7 +871,7 @@
SELECT ${ew.sqlSelect}
FROM dl_repair_tickets drt
LEFT JOIN dl_repair_records drr ON drt.id = drr.ticket_id
where 1=1
where 1=1 and drt.deleted = '0'
<if test="ew != null and ew.customSqlSegment != null and ew.customSqlSegment != ''">
AND ${ew.sqlSegment}
</if>