From 914f1d107db82f7aef2786e7d44130a7fa9f6e8b Mon Sep 17 00:00:00 2001 From: xyc <3422692813@qq.com> Date: Mon, 28 Apr 2025 15:21:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/InspectionInfoController.java | 11 ++ .../InspectionMeetCarOrderController.java | 12 +- .../controller/PartnerOwnController.java | 12 ++ .../entity/InspectionAppointment.java | 13 +++ .../inspection/entity/InspectionInfo.java | 10 ++ .../entity/InspectionMeetCarOrder.java | 31 ++++++ .../inspection/entity/InspectionWorkNode.java | 2 + .../mapper/InspectionWorkNodeMapper.java | 7 ++ .../service/AppInspectionPartnerService.java | 9 ++ .../service/IInspectionWorkNodeService.java | 14 +++ .../impl/AppInspectionPartnerServiceImpl.java | 34 ++++++ .../InspectionAppointmentServiceImpl.java | 2 +- .../impl/InspectionInfoServiceImpl.java | 71 +++++++----- .../InspectionMeetCarOrderServiceImpl.java | 100 ++++++++++++++++- .../impl/InspectionWorkNodeServiceImpl.java | 36 +++++- .../mapper/InspectionWorkNodeMapper.xml | 25 +++++ .../inspection/AppInspectionPartnerMapper.xml | 104 +++++++++++++----- .../InspectionAppointmentMapper.xml | 7 +- .../inspection/InspectionInfoMapper.xml | 10 ++ 19 files changed, 440 insertions(+), 70 deletions(-) diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/InspectionInfoController.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/InspectionInfoController.java index 97e745c8..9ad5362a 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/InspectionInfoController.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/InspectionInfoController.java @@ -386,4 +386,15 @@ public class InspectionInfoController extends BaseController { public CommonResult meetCarPhoto(@RequestBody InspectionWorkNode inspectionWorkNode) { return success(inspectionInfoService.meetCarPhoto(inspectionWorkNode)); } + + /** + * 修改异常工单 + * @param inspectionWorkNode + * @return + */ + @PostMapping("/updateException") + public CommonResult updateException(@RequestBody InspectionWorkNode inspectionWorkNode){ + inspectionWorkNodeService.updateException(inspectionWorkNode.getInspectionInfoId(), inspectionWorkNode.getIdList()); + return success("操作成功"); + } } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/InspectionMeetCarOrderController.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/InspectionMeetCarOrderController.java index 7fb35cbf..9e947607 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/InspectionMeetCarOrderController.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/InspectionMeetCarOrderController.java @@ -5,10 +5,7 @@ import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; import cn.iocoder.yudao.module.inspection.entity.InspectionMeetCarOrder; import cn.iocoder.yudao.module.inspection.service.InspectionMeetCarOrderService; import lombok.RequiredArgsConstructor; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; /** * @Description: 接车订单 @@ -31,9 +28,12 @@ public class InspectionMeetCarOrderController { */ @PostMapping("/add") public CommonResult add(@RequestBody InspectionMeetCarOrder order) { - // 设置接车员id - order.setMeetManId(SecurityFrameworkUtils.getLoginUserId()); inspectionMeetCarOrderService.add(order); return CommonResult.ok(); } + + @GetMapping("/get") + public CommonResult get(Long id){ + return CommonResult.success(inspectionMeetCarOrderService.getById(id)); + } } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/PartnerOwnController.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/PartnerOwnController.java index 9dfdfa25..15b67874 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/PartnerOwnController.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/controller/PartnerOwnController.java @@ -823,6 +823,18 @@ public class PartnerOwnController extends BaseController { return success(partnerList.getProjectBelowStandardByIds(ids,status,type)); } + /** + * 根据inspection_info的id查有的项目名称 + * + * @param ids inspection_info的id + * @author 小李 + * @date 14:52 2024/12/10 + **/ + @GetMapping("/getProjectExceptionByIds") + public CommonResult getProjectExceptionByIds(@RequestParam(value = "ids") Long[] ids,@RequestParam(value = "status",required = false) String status,@RequestParam(value = "type",required = false) String type) { + return success(partnerList.getProjectExceptionByIds(ids,status,type)); + } + /** * 根据时间查订单 * diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionAppointment.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionAppointment.java index bdb64535..d32f7001 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionAppointment.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionAppointment.java @@ -75,6 +75,19 @@ public class InspectionAppointment extends TenantBaseDO // 车辆注册时间 private Date carRegisterDate; private String address; + private String meetOrderId; @TableField(exist = false) private String skuName; + @TableField(exist = false) + private String meetName; + @TableField(exist = false) + private Integer isMeet; + @TableField(exist = false) + private String pickCarAppointmentDay; + @TableField(exist = false) + private String pickCarAppointmentTime; + @TableField(exist = false) + private String adressDetail; + @TableField(exist = false) + private String isUse; } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionInfo.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionInfo.java index c99909a6..60c284bc 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionInfo.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionInfo.java @@ -184,4 +184,14 @@ public class InspectionInfo extends TenantBaseDO private Integer sourceType; @TableField(exist = false) private String meetCarId; + @TableField(exist = false) + private String meetAddress; + @TableField(exist = false) + private String latitude; // 维度 + @TableField(exist = false) + private String longitude; // 经度 + @TableField(exist = false) + private String appointmentDay; // 经度 + @TableField(exist = false) + private String appointmentTime; // 经度 } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionMeetCarOrder.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionMeetCarOrder.java index a91706b9..7fddd63d 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionMeetCarOrder.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionMeetCarOrder.java @@ -1,7 +1,9 @@ package cn.iocoder.yudao.module.inspection.entity; import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @@ -28,6 +30,10 @@ public class InspectionMeetCarOrder extends TenantBaseDO { private String userAddress; // 用户地址 + private String meetAddress; // 接车地址 + private String latitude; // 维度 + private String longitude; // 经度 + private String carNum; // 车牌号 private String carNature; // 使用性质 @@ -45,4 +51,29 @@ public class InspectionMeetCarOrder extends TenantBaseDO { private Integer isMeet; // 是否接车 0未接 1已接 private String inspectionInfoId; + + private String appointmentDay; // 预约日期 + + private String appointmentTime; // 预约时间 + + //客户来源 + private String customerSource; + + //商品id + private Long goodsId; + //商品名称 + private String goodsTitle; + private Long skuId; + private String skuName; + + @TableField(exist = false) + private Long appointmentId; + + /** 接车拍照的内容*/ + @TableField(exist = false) + private String content; + + /** 接车拍照 */ + @TableField(exist = false) + private String images; } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionWorkNode.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionWorkNode.java index 3a53fbe1..a89d2802 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionWorkNode.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/entity/InspectionWorkNode.java @@ -108,4 +108,6 @@ public class InspectionWorkNode extends TenantBaseDO { /** 接车时所传的id*/ @TableField(exist = false) private String meetCarId; + @TableField(exist = false) + private List idList; } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/mapper/InspectionWorkNodeMapper.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/mapper/InspectionWorkNodeMapper.java index 5e04339a..d95d791f 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/mapper/InspectionWorkNodeMapper.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/mapper/InspectionWorkNodeMapper.java @@ -40,4 +40,11 @@ public interface InspectionWorkNodeMapper extends BaseMapper void recheck(@Param("list") List workNodes, @Param("status") String status); List> getStaffCount(DlInspectionProject dlInspectionProject); + + /** + * 根据检测id获取异常节点 + * @param idList + * @return + */ + List> selectExceptionNodesByInspectionIds(@Param("ids") List idList); } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/AppInspectionPartnerService.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/AppInspectionPartnerService.java index 8051e3dc..27ab41cd 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/AppInspectionPartnerService.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/AppInspectionPartnerService.java @@ -187,6 +187,15 @@ public interface AppInspectionPartnerService extends IService **/ Map>> getProjectBelowStandardByIds(Long[] ids, String status, String type); + /** + * 根据inspection_info的id查有的项目名称 + * + * @param ids inspection_info的id + * @author 小李 + * @date 14:52 2024/12/10 + **/ + Map>> getProjectExceptionByIds(Long[] ids, String status, String type); + /** * 根据时间查订单 * diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/IInspectionWorkNodeService.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/IInspectionWorkNodeService.java index b6e416d6..3759a91c 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/IInspectionWorkNodeService.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/IInspectionWorkNodeService.java @@ -75,4 +75,18 @@ public interface IInspectionWorkNodeService extends IService * @return */ List> getStaffCount(DlInspectionProject dlInspectionProject); + + /** + * 根据检测id获取异常节点 + * + * @param idList + * @return + */ + List> selectExceptionNodesByInspectionIds(List idList); + + /** + * 完成异常节点 + * @param idList + */ + void updateException(Long inspectionInfoId,List idList); } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/AppInspectionPartnerServiceImpl.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/AppInspectionPartnerServiceImpl.java index a666b4bb..f2a69ffc 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/AppInspectionPartnerServiceImpl.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/AppInspectionPartnerServiceImpl.java @@ -2089,6 +2089,40 @@ public class AppInspectionPartnerServiceImpl extends ServiceImpl>> getProjectExceptionByIds(Long[] ids, String status, String type) { + if (ids == null || ids.length == 0) { + return Collections.emptyMap(); + } + + // 1. 调用 Mapper 拿到所有“异常”节点 + List idList = Arrays.asList(ids); + List> raw = inspectionWorkNodeService + .selectExceptionNodesByInspectionIds(idList); + if (raw.isEmpty()) { + return Collections.emptyMap(); + } + + // 2. 按 inspectionInfoId 分组,并转换成 List> + return raw.stream() + .collect(Collectors.groupingBy( + m -> ((Number) m.get("inspectionInfoId")).longValue(), // key:工单ID + Collectors.mapping(m -> { + Map map = new HashMap<>(); + map.put("id", m.get("nodeId").toString()); + map.put("name", m.get("projectName").toString()); + return map; + }, Collectors.toList()) + )); + } + /** * 根据时间查订单 * diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionAppointmentServiceImpl.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionAppointmentServiceImpl.java index 452f9cd3..67b4d2e4 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionAppointmentServiceImpl.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionAppointmentServiceImpl.java @@ -150,7 +150,7 @@ public class InspectionAppointmentServiceImpl extends ServiceImpllambdaUpdate() - .eq(InspectionAppointment::getId, inspectionInfo.getAppointmentId()) - .set(InspectionAppointment::getOrderId, orderInfo.getId())); + //根据预约id查询预约信息 + InspectionAppointment appointment1 = inspectionAppointmentService.getById(inspectionInfo.getAppointmentId()); + if (ObjectUtil.isNotEmpty(appointment1.getOrderId())) { + // 需要核销订单表 + //修改订单的核销时间 +// orderInfoService.update(Wrappers.lambdaUpdate() +// .eq(OrderInfo::getId, appointment1.getOrderId()) +// .set(OrderInfo::getValidationTime, new Date())); + + // 查询订单 + orderInfo = orderInfoService.getById(appointment1.getOrderId()); + }else { + orderInfo.setPartnerId(partners.getPartnerId()); + orderInfo.setGoodsId(Long.parseLong(goods.getId().toString())); + orderInfo.setGoodsTitle(goods.getTitle()); + orderInfo.setGoodsType("jc"); + orderInfo.setGoodNum(1); + orderInfo.setSkuId(Long.parseLong(sku.getId().toString())); + orderInfo.setSkuName(sku.getSkuName()); + orderInfo.setGoodsPrice(goods.getPrice()); + orderInfo.setStartTime(new Date()); + orderInfo.setOrderTime(new Date()); + orderInfo.setOrderType("jc"); + orderInfo.setUserId(user.getId()); + orderInfo.setRealName(user.getNickname()); + orderInfo.setIsOnline("0"); + orderInfo.setPhonenumber(user.getMobile()); + orderInfo.setPartnerName(partner.getPartnerName()); + orderInfo.setOrderNo("线下订单-" + System.currentTimeMillis()); + //赊账的情况 + orderInfo.setOrderStatus("0"); + orderInfoService.save(orderInfo); + + //修改预约信息表的orderId + InspectionAppointment appointment = new InspectionAppointment(); + appointment.setOrderId(orderInfo.getId()); + inspectionAppointmentService.update(Wrappers.lambdaUpdate() + .eq(InspectionAppointment::getId, inspectionInfo.getAppointmentId()) + .set(InspectionAppointment::getOrderId, orderInfo.getId())); + } //修改订单的核销时间 orderInfoService.update(Wrappers.lambdaUpdate() @@ -851,7 +868,7 @@ public class InspectionInfoServiceImpl extends ServiceImpllambdaUpdate() .eq(InspectionInfo::getId, inspectionWorkNode.getMeetCarId()) .set(InspectionInfo::getIsMeetCar, InspectionConstants.INSPECTION_MEET_CAR_ORDER_IS_MEET_CAR_YES)); - }else if (Objects.equals(inspectionWorkNode.getSourceType(), InspectionConstants.INSPECTION_MEET_CAR_ORDER_IS_MEET_CAR_COMPLETE_TYPE_MEET_CAR_ORDER)) { + } else if (Objects.equals(inspectionWorkNode.getSourceType(), InspectionConstants.INSPECTION_MEET_CAR_ORDER_IS_MEET_CAR_COMPLETE_TYPE_MEET_CAR_ORDER)) { // 修改接车订单表为已接车 inspectionMeetCarOrderService.update(Wrappers.lambdaUpdate() .eq(InspectionMeetCarOrder::getId, inspectionWorkNode.getMeetCarId()) diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionMeetCarOrderServiceImpl.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionMeetCarOrderServiceImpl.java index a343cee5..9e4d6f02 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionMeetCarOrderServiceImpl.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionMeetCarOrderServiceImpl.java @@ -1,13 +1,24 @@ package cn.iocoder.yudao.module.inspection.service.impl; -import cn.iocoder.yudao.module.inspection.entity.InspectionMeetCarOrder; -import cn.iocoder.yudao.module.inspection.entity.ShopInspectionGoods; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; +import cn.iocoder.yudao.framework.security.config.SecurityProperties; +import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; +import cn.iocoder.yudao.module.appBase.controller.admin.InspectionSocket; +import cn.iocoder.yudao.module.inspection.entity.*; import cn.iocoder.yudao.module.inspection.mapper.AppInspectionGoodsMapper; import cn.iocoder.yudao.module.inspection.mapper.InspectionMeetCarOrderMapper; -import cn.iocoder.yudao.module.inspection.service.AppInspectionGoodsService; -import cn.iocoder.yudao.module.inspection.service.InspectionMeetCarOrderService; +import cn.iocoder.yudao.module.inspection.service.*; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.RequiredArgsConstructor; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.Date; /** * @Description: 接车订单 @@ -16,14 +27,95 @@ import org.springframework.stereotype.Service; * @Version: 1.0 */ @Service +@RequiredArgsConstructor public class InspectionMeetCarOrderServiceImpl extends ServiceImpl implements InspectionMeetCarOrderService { + + private final InspectionSocket inspectionSocket; + + private final IInspectionAppointmentService inspectionAppointmentService; + + private final IInspectionPickCarService inspectionPickCarService; + + private final InspectionStepInfoService inspectionStepInfoService; + + private final InspectionGoodsSkuService skuService; + + private final IShopInspectionGoodsService goodsService; + /** * 添加接车订单 * * @param order 接车订单 */ @Override + @Transactional public void add(InspectionMeetCarOrder order) { + boolean ifSendMessage = true; + // 设置接车员id + if (order.getMeetManId() == null) { + order.setMeetManId(SecurityFrameworkUtils.getLoginUserId()); + ifSendMessage = false; + } + if (ObjectUtil.isNotEmpty(order.getSkuId())) { + InspectionGoodsSku sku = skuService.getById(order.getSkuId()); + ShopInspectionGoods goods = goodsService.getById(sku.getGoodsId()); + + order.setGoodsId(Long.parseLong(goods.getId().toString())); + order.setGoodsTitle(goods.getTitle()); + + order.setSkuName(sku.getSkuName()); + } save(order); + + //指派的接车人 + if (ifSendMessage) { + // 修改预约表的接车订单id字段 + inspectionAppointmentService.update(Wrappers.lambdaUpdate() + .eq(InspectionAppointment::getId, order.getAppointmentId()) + .set(InspectionAppointment::getMeetOrderId, order.getId())); + + // 获取预约表的信息 + InspectionAppointment appointment = inspectionAppointmentService.getById(order.getAppointmentId()); + if (ObjectUtil.isNotEmpty(appointment)) { + // 判断是否有上门取车 + if (appointment.getIsPickCar().equals("1")) { + InspectionPickCar pickCar = inspectionPickCarService.getById(appointment.getPickCarId()); + //获取详细地址和经纬度修改接车订单表 + update(Wrappers.lambdaUpdate() + .eq(InspectionMeetCarOrder::getId, order.getId()) + .set(InspectionMeetCarOrder::getMeetAddress, pickCar.getAdressDetail()) + .set(InspectionMeetCarOrder::getLatitude, pickCar.getLatitude()) + .set(InspectionMeetCarOrder::getLongitude, pickCar.getLongitude()) + .set(InspectionMeetCarOrder::getAppointmentDay, pickCar.getAppointmentDay()) + .set(InspectionMeetCarOrder::getAppointmentTime, pickCar.getAppointmentTime())); + } else { + update(Wrappers.lambdaUpdate() + .eq(InspectionMeetCarOrder::getId, order.getId()) + .set(InspectionMeetCarOrder::getAppointmentDay, appointment.getAppointmentDay())); + } + } + inspectionSocket.sendMessage("接工单", order.getMeetManId().toString()); + } + + if (StrUtil.isNotEmpty(order.getContent()) || StrUtil.isNotEmpty(order.getImages())) { + // 在步骤表里添加一条记录 + InspectionStepInfo inspectionStepInfo = new InspectionStepInfo(); + inspectionStepInfo.setInspectionInfoId(order.getId()); + //设置开始时间 + inspectionStepInfo.setCreateTime(DateUtil.date()); + inspectionStepInfo.setCreator(Integer.parseInt(SecurityFrameworkUtils.getLoginUserId() + "")); + inspectionStepInfo.setTitle("接车拍照"); + inspectionStepInfo.setContent(order.getContent()); + inspectionStepInfo.setImages(order.getImages()); + inspectionStepInfo.setStepNum(1); + inspectionStepInfo.setUpdater(Integer.parseInt(SecurityFrameworkUtils.getLoginUserId() + "")); + inspectionStepInfo.setUpdateTime(DateUtil.date()); + inspectionStepInfoService.save(inspectionStepInfo); + + //修改订单表为已接车 + update(Wrappers.lambdaUpdate() + .eq(InspectionMeetCarOrder::getId, order.getId()) + .set(InspectionMeetCarOrder::getIsMeet, 1)); + } } } diff --git a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionWorkNodeServiceImpl.java b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionWorkNodeServiceImpl.java index cd587387..0db43063 100644 --- a/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionWorkNodeServiceImpl.java +++ b/dl-module-inspection/src/main/java/cn/iocoder/yudao/module/inspection/service/impl/InspectionWorkNodeServiceImpl.java @@ -388,7 +388,7 @@ public class InspectionWorkNodeServiceImpl extends ServiceImpl> selectExceptionNodesByInspectionIds(List idList) { + return baseMapper.selectExceptionNodesByInspectionIds(idList); + } + + /** + * 完成异常节点 + * + * @param idList + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void updateException(Long inspectionInfoId, List idList) { + // 1. 修改工单表为已完成 + inspectionInfoService.update(Wrappers.lambdaUpdate(InspectionInfo.class) + .eq(InspectionInfo::getId, inspectionInfoId) + .set(InspectionInfo::getIsPass, "1") + .set(InspectionInfo::getStatus, "1")); + + // 2.修改工单节点表为已完成 + update(Wrappers.lambdaUpdate(InspectionWorkNode.class) + .in(InspectionWorkNode::getId, idList) + .set(InspectionWorkNode::getStatus, "2") + .set(InspectionWorkNode::getType, "1")); + } + /** * 判断传入的 InspectionWorkNode 对象是否在集合中有后续项目 * @@ -551,4 +583,4 @@ public class InspectionWorkNodeServiceImpl extends ServiceImpl + diff --git a/dl-module-inspection/src/main/resources/mapper/inspection/AppInspectionPartnerMapper.xml b/dl-module-inspection/src/main/resources/mapper/inspection/AppInspectionPartnerMapper.xml index c39f8e61..d1808610 100644 --- a/dl-module-inspection/src/main/resources/mapper/inspection/AppInspectionPartnerMapper.xml +++ b/dl-module-inspection/src/main/resources/mapper/inspection/AppInspectionPartnerMapper.xml @@ -220,34 +220,82 @@ where sig.partner_id =#{partnerId} order by pw.create_time desc - + + - + select ia.*,su.nickname as buyName, su.mobile as buyPhoneNum,su2.nickname as meetName,imco.is_meet,ic.appointment_day as pickCarAppointmentDay,ic.appointment_time as pickCarAppointmentTime,ic.adress_detail,ia.is_use from inspection_appointment ia left join system_users su on su.id = ia.user_id + LEFT JOIN inspection_meet_car_order imco ON imco.id = ia.meet_order_id + LEFT JOIN system_users su2 on su2.id = imco.meet_man_id + LEFT JOIN inspection_pick_car ic on ic.id = ia.pick_car_id where ia.id = #{id} diff --git a/dl-module-inspection/src/main/resources/mapper/inspection/InspectionInfoMapper.xml b/dl-module-inspection/src/main/resources/mapper/inspection/InspectionInfoMapper.xml index 6ead62e2..186124cf 100644 --- a/dl-module-inspection/src/main/resources/mapper/inspection/InspectionInfoMapper.xml +++ b/dl-module-inspection/src/main/resources/mapper/inspection/InspectionInfoMapper.xml @@ -388,6 +388,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ii.meet_man_id AS meet_id, ii.tenant_id, ii.create_time, + null AS meetAddress, + null AS latitude, + null AS longitude, + null AS appointmentDay, + null AS appointmentTime, 0 AS source_type FROM inspection_info ii WHERE ii.deleted = 0 AND ii.meet_man_id = #{inspectionInfo.dealUserId} AND ii.is_meet_car = '0' AND ii.status != '1' @@ -411,6 +416,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" imco.meet_man_id, imco.tenant_id, imco.create_time, + imco.meet_address AS meetAddress, + imco.latitude, + imco.longitude, + imco.appointment_day, + imco.appointment_time, 1 AS source_type FROM inspection_meet_car_order imco WHERE imco.deleted = 0 AND imco.meet_man_id = #{inspectionInfo.dealUserId} AND imco.is_meet = '0'