更新代码
This commit is contained in:
parent
d720dfdf2a
commit
f718c728c6
@ -14,6 +14,8 @@ import cn.iocoder.yudao.module.order.vo.RepairOrderInfoMapper;
|
||||
import cn.iocoder.yudao.module.order.vo.RepairOrderInfoPageReqVO;
|
||||
import cn.iocoder.yudao.module.order.vo.RepairOrderInfoRespVO;
|
||||
import cn.iocoder.yudao.module.order.vo.RepairOrderInfoSaveReqVO;
|
||||
import cn.iocoder.yudao.module.tickets.entity.Tickets;
|
||||
import cn.iocoder.yudao.module.tickets.service.TicketsService;
|
||||
import cn.iocoder.yudao.util.WechatPayConfig;
|
||||
import cn.iocoder.yudao.util.WechatPayRequest;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
@ -30,10 +32,7 @@ import org.springframework.validation.annotation.Validated;
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static cn.iocoder.yudao.common.BaseConstants.*;
|
||||
@ -59,6 +58,9 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl<RepairOrderInfoMappe
|
||||
private WechatPayConfig wechatPayConfig;
|
||||
@Resource
|
||||
private WechatPayRequest wechatPayRequest;
|
||||
@Resource
|
||||
private TicketsService ticketsService;
|
||||
|
||||
|
||||
/**
|
||||
* 保存订单信息
|
||||
@ -89,6 +91,11 @@ public class RepairOrderInfoServiceImpl extends ServiceImpl<RepairOrderInfoMappe
|
||||
balanceService.balanceCallback(orderInfo);
|
||||
} else if (ORDER_KKYL.equals(orderInfo.getGoodsType())){
|
||||
couponService.couponCallBack(orderInfo);
|
||||
} else if (ORDER_WXFW.equals(orderInfo.getGoodsType())){
|
||||
// 如果是维修订单,那订单的GoodsId就一定是工单的id
|
||||
// 这需要需要调用维修模块的工单的service通过工单id将对应工单的ticketsStatus置为“02”即可完成工单的更新
|
||||
List<String> ids = Collections.singletonList(orderInfo.getGoodsId());
|
||||
ticketsService.updateTickets(ids);
|
||||
}
|
||||
orderInfo.setOrderStatus(GENERAL_YES);
|
||||
orderInfo.setPayTime(LocalDateTime.now());
|
||||
|
@ -0,0 +1,180 @@
|
||||
package cn.iocoder.yudao.module.tickets.entity;
|
||||
|
||||
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 维修工单表
|
||||
*
|
||||
* @author 小李
|
||||
* @date 9:32 2024/9/25
|
||||
**/
|
||||
@Data
|
||||
@TableName("dl_repair_tickets")
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class Tickets extends TenantBaseDO {
|
||||
|
||||
/**
|
||||
* 主键标识
|
||||
*/
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
private String id;
|
||||
|
||||
/**
|
||||
* 工单号;自动生成
|
||||
*/
|
||||
private String ticketNo;
|
||||
|
||||
/**
|
||||
* 业务类型(repair_type)
|
||||
*/
|
||||
private String repairType;
|
||||
|
||||
/**
|
||||
* 用户ID(system_users表的ID)
|
||||
*/
|
||||
private String userId;
|
||||
|
||||
/**
|
||||
* 用户名(base_customer_main表的cus_name)
|
||||
*/
|
||||
private String userName;
|
||||
|
||||
/**
|
||||
* 用户手机号(base_customer_main表的phone_number)
|
||||
*/
|
||||
private String userMobile;
|
||||
|
||||
/**
|
||||
* 车辆ID(base_car_main表的ID);选择用户之后选择车辆,有直接选,没有就添加
|
||||
*/
|
||||
private String carId;
|
||||
|
||||
/**
|
||||
* 车牌号(base_car_main表的license_number)
|
||||
*/
|
||||
private String carNo;
|
||||
|
||||
/**
|
||||
* 车架号(base_car_main的vin)
|
||||
*/
|
||||
private String carVin;
|
||||
|
||||
/**
|
||||
* 车辆品牌ID(base_car_brand表的ID);车辆存在就会有品牌,没有就需要新增
|
||||
*/
|
||||
private String carBrandId;
|
||||
|
||||
/**
|
||||
* 车辆品牌名称(base_car_brand表的brand_name)
|
||||
*/
|
||||
private String carBrandName;
|
||||
|
||||
/**
|
||||
* 车辆品牌类型(base_car_brand表的brand_type)
|
||||
*/
|
||||
private String carBrandType;
|
||||
|
||||
/**
|
||||
* 服务顾问ID(system_users表的ID)
|
||||
*/
|
||||
private String adviserId;
|
||||
|
||||
/**
|
||||
* 服务顾问名字(system_user表的nickname)
|
||||
*/
|
||||
private String adviserName;
|
||||
|
||||
/**
|
||||
* 结算方法(字典repair_pay_type);可能是组合结算(微信+现金等),所以多选
|
||||
*/
|
||||
private String payType;
|
||||
|
||||
/**
|
||||
* 维修建议
|
||||
*/
|
||||
private String repairAdvice;
|
||||
|
||||
/**
|
||||
* 质保说明(公里)
|
||||
*/
|
||||
private String qualityMileage;
|
||||
|
||||
/**
|
||||
* 质保说明(天数)
|
||||
*/
|
||||
private String qualityDay;
|
||||
|
||||
/**
|
||||
* 是否终检(字典yes_no);已存在于系统中(是:0,否:1)
|
||||
*/
|
||||
private String endCheck;
|
||||
|
||||
/**
|
||||
* 维修旧件处理方式(字典repair_part_disposal)
|
||||
*/
|
||||
private String partDisposal;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 工单类型(字典repair_tickets_type)
|
||||
*/
|
||||
private String ticketType;
|
||||
|
||||
/**
|
||||
* 门店ID(base_company表的ID)
|
||||
*/
|
||||
private String corpId;
|
||||
|
||||
/**
|
||||
* 部门ID
|
||||
*/
|
||||
private Long deptId;
|
||||
|
||||
/** 工单子项的总数(每一个子项的数量) */
|
||||
private Integer count;
|
||||
|
||||
/** 工单项目总价 */
|
||||
private BigDecimal projectPrice;
|
||||
|
||||
/** 工单配件总价 */
|
||||
private BigDecimal partPrice;
|
||||
|
||||
/** 工单其他总价 */
|
||||
private BigDecimal otherPrice;
|
||||
|
||||
/** 工单总价 */
|
||||
private BigDecimal totalPrice;
|
||||
|
||||
/** 是否已结算 */
|
||||
private String ticketsStatus;
|
||||
|
||||
/** 进厂时间 */
|
||||
private Date inTime;
|
||||
|
||||
/** 预计完工时间 */
|
||||
private Date outTime;
|
||||
|
||||
/** 参考成本 */
|
||||
private BigDecimal cost;
|
||||
|
||||
/** 参考毛利 */
|
||||
private BigDecimal profit;
|
||||
|
||||
/** 领料状态 */
|
||||
private String partStatus;
|
||||
|
||||
/** 工单进行状态 */
|
||||
private String ticketsWorkStatus;
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
package cn.iocoder.yudao.module.tickets.mapper;
|
||||
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.module.tickets.entity.Tickets;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* 维修工单表 mapper
|
||||
*
|
||||
* @author 小李
|
||||
* @date 9:33 2024/9/25
|
||||
**/
|
||||
@Mapper
|
||||
public interface TicketsMapper extends BaseMapperX<Tickets> {
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
package cn.iocoder.yudao.module.tickets.service;
|
||||
|
||||
import cn.iocoder.yudao.module.tickets.entity.Tickets;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 维修工单表 service
|
||||
*
|
||||
* @author 小李
|
||||
* @date 9:34 2024/9/25
|
||||
**/
|
||||
public interface TicketsService extends IService<Tickets> {
|
||||
|
||||
/**
|
||||
* 更新工单状态
|
||||
* 考虑可能有批量操作的情况,采用批量更新的方式
|
||||
*
|
||||
* @author 小李
|
||||
* @date 9:36 2024/9/25
|
||||
* @param ticketIds 工单ids
|
||||
**/
|
||||
void updateTickets(List<String> ticketIds);
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
package cn.iocoder.yudao.module.tickets.service.impl;
|
||||
|
||||
import cn.iocoder.yudao.module.tickets.entity.Tickets;
|
||||
import cn.iocoder.yudao.module.tickets.mapper.TicketsMapper;
|
||||
import cn.iocoder.yudao.module.tickets.service.TicketsService;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author 小李
|
||||
* @date 9:35 2024/9/25
|
||||
**/
|
||||
@Service
|
||||
public class TicketsServiceImpl extends ServiceImpl<TicketsMapper, Tickets> implements TicketsService {
|
||||
|
||||
/**
|
||||
* 更新工单状态为已结账
|
||||
* 考虑可能有批量操作的情况,采用批量更新的方式
|
||||
*
|
||||
* @author 小李
|
||||
* @date 9:36 2024/9/25
|
||||
* @param ticketIds 工单ids
|
||||
**/
|
||||
@Override
|
||||
public void updateTickets(List<String> ticketIds){
|
||||
baseMapper.update(new LambdaUpdateWrapper<Tickets>().in(Tickets::getId, ticketIds).set(Tickets::getTicketsStatus, "02"));
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user