瀏覽代碼

iaw

master
chenchaod 1 月之前
父節點
當前提交
6fdc75a142

+ 16
- 2
zhywpt-app-iaw/src/main/java/cn/com/taiji/iaw/api/issue/OrderController.java 查看文件

@@ -159,8 +159,8 @@ public class OrderController extends MyValidController {
}
@ApiOperation(value = "18.订单详情")
@PostMapping(value = "/orderDetailQuery")
public ApiResponse<OrderDetailResDto> orderDetailQuery(@Valid @RequestBody OrderDetailReqDto reqDto) throws ManagerException {
OrderDetailResDto resDto = issueOrderManage.orderDetailQuery(reqDto);
public ApiResponse<OrderDetailResDTO> orderDetailQuery(@Valid @RequestBody OrderDetailReqDto reqDto) throws ManagerException {
OrderDetailResDTO resDto = issueOrderManage.orderDetailQuery(reqDto);
return ApiResponse.of(resDto);
}
@ApiOperation(value = "19.修改地址前-查询")
@@ -182,4 +182,18 @@ public class OrderController extends MyValidController {
OrderQueryResponseDTO response = issueOrderManage.orderQuery(request);
return ApiResponse.of(response);
}

@ApiOperation(value = "领取-APP")
@PostMapping(value = "/receive")
public ApiResponse<?> receive(@Valid @RequestBody OrderReceiveReqDTO reqDto) throws ManagerException {
issueOrderManage.receive(reqDto);
return ApiResponse.success();
}

@ApiOperation(value = "审核-APP")
@PostMapping(value = "/examine")
public ApiResponse<?> examine(@Valid @RequestBody OrderExamineReqDTO reqDto) throws ManagerException {
issueOrderManage.examine(reqDto);
return ApiResponse.success();
}
}

+ 134
- 0
zhywpt-app-iaw/src/main/java/cn/com/taiji/iaw/dto/issue/order/IssueOrderinfoExtModel.java 查看文件

@@ -0,0 +1,134 @@
package cn.com.taiji.iaw.dto.issue.order;

import cn.com.taiji.core.entity.dict.basic.*;
import cn.com.taiji.core.entity.dict.issue.IssueOrderStatus;
import cn.com.taiji.core.entity.dict.issue.IssueOrderStep;
import cn.com.taiji.core.entity.dict.issue.ShippingStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.Column;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.validation.constraints.Size;
import java.time.LocalDateTime;

/**
* @Author:ChenChao
* @Date:2025/8/4 10:03
* @Filename:IssueOrderinfoModel
* @description:发行订单信息与订单实体一摸一样:目的标注swagger
*/
@ApiModel(description = "发行订单拓展信息")
@Data
public class IssueOrderinfoExtModel {
@ApiModelProperty(value = "订单id")
private String orderNo;
@ApiModelProperty(value = "取消订单操作人")
private String cancelOpId;
@ApiModelProperty(value = "取消订单原因。取消订单时必填")
private String cancelReason;
@ApiModelProperty(value = "customer_department;部门")
private String customerDepartment;
@ApiModelProperty(value = "address;地址")
private String customerAddress;
@ApiModelProperty(value = "positive_image_url;证件照正面图片地址")
private String customerPositiveImageUrl;
@ApiModelProperty(value = "negative_image_url;证件照反面图片地址")
private String customerNegativeImageUrl;
@ApiModelProperty(value = "委托书照片")
private String proxyUrl;
@ApiModelProperty(value = "经办人正面照片")
private String agentPosImgUrl;
@ApiModelProperty(value = "经办人反面照片")
private String agentNegImgUrl;
@ApiModelProperty(value = "经办人性别")
private Gender agentGender;
@ApiModelProperty(value = "经办人联系方式")
private String agentTel;
@ApiModelProperty(value = "经办人地址")
private String agentAddress;
@ApiModelProperty(value = "经办人证件有效期")
private String agentIdVld;
@ApiModelProperty(value = "vehicle_approved_count;核载人数")
private Integer vehicleApprovedCount;
@ApiModelProperty(value = "vehicle_total_mass;总质量")
private Integer vehicleTotalMass;
@ApiModelProperty(value = "vehicle_maintenace_mass;整备质量")
private Integer vehicleMaintenaceMass;
@ApiModelProperty(value = "vehicle_permitted_weight;核定载质量")
private Integer vehiclePermittedWeight;
@ApiModelProperty(value = "vehicle_engine_num;发动机号码")
private String vehicleEngineNum;
@ApiModelProperty(value = "vehicle_vin;车辆识别代号")
private String vehicleVin;
@ApiModelProperty(value = "vehicle_model;行驶证品牌型号")
private String vehicleModel;
@ApiModelProperty(value = "vehicle_dimensions;车辆尺寸 行驶证上内容 长*宽*高,mm,不超过100个字符")
private String vehicleDimensions;
@ApiModelProperty(value = "vehicle_permitted_two_weight;准牵引总质量")
private Integer vehiclePermittedTwoWeight;
@ApiModelProperty(value = "行驶证正面照片")
private String vehPosImgUrl;
@ApiModelProperty(value = "行驶证反面 照片")
private String vehNegImgUrl;
@ApiModelProperty(value = "车身45度照")
private String vehBodyUrl;
@ApiModelProperty(value = "用户使用类型")
private UseUserType useUserType;
@ApiModelProperty(value = "牵引车标识:0否1是")
private Integer tractorSign;
@ApiModelProperty(value = "道路运输许可证图片地址")
private String roadTransportPermitPicUrl;
@ApiModelProperty(value = "经度")
private String longitude;
@ApiModelProperty(value = "纬度")
private String latitude;
@ApiModelProperty(value = "办理时的详细地址")
private String detailedAddress;
@ApiModelProperty(value = "机审失败原因")
private String auditReason;
@ApiModelProperty(value = "退货驳回拒绝原因")
private String rejectReason;
@ApiModelProperty(value = "订单审核失败原因")
private String auditFailureCase;
@ApiModelProperty(value = "卡卷ids 多个用,号分隔,激活后领取时下发")
private String couponIds;
@ApiModelProperty(value = "签约配置编号")
private String signConfigId;
@ApiModelProperty(value = "协议编号")
private String agreements;
@ApiModelProperty(value = "车轴数")
private Integer vehicleAxleCount;
@ApiModelProperty(value = "车辆使用性质")
private VehicleUseCharacter useCharacter;
@ApiModelProperty(value = "注册日期")
private String registerDate;
@ApiModelProperty(value = "发证日期")
private String issueDate;
@ApiModelProperty(value = "签约时间")
private LocalDateTime agreeTime;
@ApiModelProperty(value = "收货人——第一次发货记录")
private String consignee;
@ApiModelProperty(value = "收货人电话——第一次发货记录")
private String consigneeTel;
@ApiModelProperty(value = "收货所在地区(省、市、区、街道)——第一次发货记录")
private String region;
@ApiModelProperty(value = "收货详细地址——第一次发货记录")
private String address;
@ApiModelProperty(value = "邮政编码")
private String postCode;
@ApiModelProperty(value = "快递单号 ——第一次发货记录")
private String trackingNumber;
@ApiModelProperty(value = "快递公司 ——第一次发货记录")
private String courierCompany;
@ApiModelProperty(value = "车主电话")
private String ownerTel;
@ApiModelProperty(value = "车主联系地址")
private String ownerAddress;
@ApiModelProperty(value = "车主证件正面图片")
private String ownerPosImgUrl;
@ApiModelProperty(value = "车主证件反面图片")
private String ownerNegImgUrl;
}

+ 29
- 0
zhywpt-app-iaw/src/main/java/cn/com/taiji/iaw/dto/issue/order/OrderDetailResDTO.java 查看文件

@@ -0,0 +1,29 @@
package cn.com.taiji.iaw.dto.issue.order;

import cn.com.taiji.core.entity.issue.IssueOrderinfo;
import cn.com.taiji.core.entity.issue.IssueOrderinfoExt;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
* @Author:ChenChao
* @Date:2025/7/16 16:25
* @Filename:orderDetailResDto
* @description:
*/
@ApiModel("订单详情返回参数")
@Data
public class OrderDetailResDto extends IssueOrderinfoModel {

@ApiModelProperty(value = "是否可以评价")
private Boolean canEvaluate;

@ApiModelProperty(value = "渠道签约地址")
private String qdSignUrl;
@ApiModelProperty(value = "渠道AppId")
private String qdAppId;

@ApiModelProperty(value = "车身45度照")
private String vehBodyUrl;//车身45度照
}

+ 38
- 0
zhywpt-app-iaw/src/main/java/cn/com/taiji/iaw/dto/issue/order/OrderExamineReqDTO.java 查看文件

@@ -0,0 +1,38 @@
package cn.com.taiji.iaw.dto.issue.order;

import cn.com.taiji.common.valid.ViolationValidator;
import cn.com.taiji.core.dto.AbstractStaffBizRequestDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
* @Author:ChenChao
* @Date:2025/6/9 19:14
* @Filename:OrderExamineReqDTO
* @description:
*/
@ApiModel(description = "审核入参")
@Data
public class OrderExamineReqDTO extends AbstractStaffBizRequestDTO {

@NotBlank
@ApiModelProperty("订单编号")
private String orderNo;
@ApiModelProperty(value = "审核状态")
@NotNull
private Boolean auditStatus;
@ApiModelProperty(value = "审核原因")
private String reason;


@Override
protected void validate(ViolationValidator validator) {
if(!auditStatus) {
validator.validFieldNotNull("reason", reason);
}
}
}

+ 20
- 0
zhywpt-app-iaw/src/main/java/cn/com/taiji/iaw/dto/issue/order/OrderReceiveReqDTO.java 查看文件

@@ -0,0 +1,20 @@
package cn.com.taiji.iaw.dto.issue.order;

import cn.com.taiji.core.dto.AbstractStaffBizRequestDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
* @Author:ChenChao
* @Date:2025/8/4 14:47
* @Filename:OrderReceiveReqDTO
* @description:
*/
@Data
@ApiModel(description = "订单领取请求")
public class OrderReceiveReqDTO extends AbstractStaffBizRequestDTO {

@ApiModelProperty(value = "订单编号")
private String orderNo;
}

+ 30
- 0
zhywpt-app-iaw/src/main/java/cn/com/taiji/iaw/dto/issue/order/orderDetailResDTO.java 查看文件

@@ -0,0 +1,30 @@
package cn.com.taiji.iaw.dto.issue.order;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
* @Author:ChenChao
* @Date:2025/7/16 16:25
* @Filename:orderDetailResDto
* @description:
*/
@ApiModel("订单详情返回参数")
@Data
public class OrderDetailResDTO extends IssueOrderinfoModel {

@ApiModelProperty(value = "是否可以评价")
private Boolean canEvaluate;

@ApiModelProperty(value = "渠道签约地址")
private String qdSignUrl;
@ApiModelProperty(value = "渠道AppId")
private String qdAppId;

@ApiModelProperty(value = "车身45度照")
private String vehBodyUrl;//车身45度照

@ApiModelProperty(value = "订单拓展信息")
private IssueOrderinfoExtModel orderinfoExt;
}

+ 5
- 1
zhywpt-app-iaw/src/main/java/cn/com/taiji/iaw/manager/issue/IssueOrderManage.java 查看文件

@@ -50,7 +50,7 @@ public interface IssueOrderManage {

void agreeProtocol(AgreeProtocolReqDTO reqDto) throws ManagerException;

OrderDetailResDto orderDetailQuery(OrderDetailReqDto reqDto) throws ManagerException;
OrderDetailResDTO orderDetailQuery(OrderDetailReqDto reqDto) throws ManagerException;

void orderReceiveGoods(OrderDetailReqDto reqDto) throws ManagerException;

@@ -63,4 +63,8 @@ public interface IssueOrderManage {
PayAfterOrderResDTO payAfterOrder(OrderDetailReqDto reqDto) throws ManagerException;

OrderQueryResponseDTO orderQuery(CommRequestDTO request) throws ServiceHandleException;

void receive(OrderReceiveReqDTO reqDto) throws ManagerException;

void examine(OrderExamineReqDTO reqDto) throws ManagerException;
}

+ 43
- 2
zhywpt-app-iaw/src/main/java/cn/com/taiji/iaw/manager/issue/IssueOrderManageImpl.java 查看文件

@@ -348,11 +348,26 @@ public class IssueOrderManageImpl extends AbstractIawManager implements IssueOrd
}

@Override
public OrderDetailResDto orderDetailQuery(OrderDetailReqDto reqDto) throws ManagerException {
public OrderDetailResDTO orderDetailQuery(OrderDetailReqDto reqDto) throws ManagerException {
IssueOrderinfo orderinfo = checkOrder(reqDto.getOrderNo());
IssueOrderinfoExt orderinfoExt = checkOrderExt(reqDto.getOrderNo());
OrderDetailResDto resDto = copyProperties(orderinfo, new OrderDetailResDto());
OrderDetailResDTO resDto = copyProperties(orderinfo, new OrderDetailResDTO());
resDto.setVehBodyUrl(orderinfoExt.getVehBodyUrl());
IssueOrderinfoExtModel extModel = copyProperties(orderinfoExt, new IssueOrderinfoExtModel());
//处理地址===============开始
extModel.setCustomerPositiveImageUrl(minioUtil.getOuterUrl(orderinfoExt.getCustomerPositiveImageUrl()));
extModel.setCustomerNegativeImageUrl(minioUtil.getOuterUrl(orderinfoExt.getCustomerNegativeImageUrl()));
extModel.setProxyUrl(minioUtil.getOuterUrl(orderinfoExt.getProxyUrl()));
extModel.setAgentPosImgUrl(minioUtil.getOuterUrl(orderinfoExt.getAgentPosImgUrl()));
extModel.setAgentNegImgUrl(minioUtil.getOuterUrl(orderinfoExt.getAgentNegImgUrl()));
extModel.setVehPosImgUrl(minioUtil.getOuterUrl(orderinfoExt.getVehPosImgUrl()));
extModel.setVehNegImgUrl(minioUtil.getOuterUrl(orderinfoExt.getVehNegImgUrl()));
extModel.setVehBodyUrl(minioUtil.getOuterUrl(orderinfoExt.getVehBodyUrl()));
extModel.setRoadTransportPermitPicUrl(minioUtil.getOuterUrl(orderinfoExt.getRoadTransportPermitPicUrl()));
extModel.setOwnerPosImgUrl(minioUtil.getOuterUrl(orderinfoExt.getOwnerPosImgUrl()));
extModel.setOwnerNegImgUrl(minioUtil.getOuterUrl(orderinfoExt.getOwnerNegImgUrl()));
//处理地址===============结束
resDto.setOrderinfoExt(extModel);
//暂定只有激活完成的可以评价
if (IssueOrderStep.ACTIVED.equals(orderinfo.getOrderStep())) {
CommonSatisfaction satisfaction = satisfactionRepo.findByOrderNo(orderinfo.getOrderNo());
@@ -497,6 +512,32 @@ public class IssueOrderManageImpl extends AbstractIawManager implements IssueOrd
return dto;
}

@Override
public void receive(OrderReceiveReqDTO reqDto) throws ManagerException {
// IssueOrderinfo order = issueOrderinfoRepo.findByOrderNo(reqDto.getOrderNo());
// if (order == null) throw new ManagerException("此订单不存在");
// order.setReceiveStatus(true);
// order.setReceiveTime(LocalDateTime.now());
// Staff staff = staffRepo.findByStaffId(reqDto.getStaffId());
// order.setReceiver(staff.getOpenId());
// issueOrderinfoRepo.merge(order);
OrderReceiveRequest request = new OrderReceiveRequest();
request.setOrderNo(reqDto.getOrderNo());
request.setStaffId(reqDto.getStaffId());
OrderReceiveResponse response = jsonPostRepeat(request);
sysPersistOperateLog(OperateType.ORDER_RECEIVE, response.getId(), reqDto.getOrderSource(), findOpenIdByToken(reqDto.getAccessToken()), "发行订单领取");

}

@Override
public void examine(OrderExamineReqDTO reqDto) throws ManagerException {
//格式校验
reqDto.validate();
OrderAuditRequest request = copyProperties(reqDto, new OrderAuditRequest());
OrderAuditResponse response = jsonPostRepeat(request);
sysPersistOperateLog(OperateType.ORDER_EXAMINE, response.getId(), reqDto.getOrderSource(), findOpenIdByToken(reqDto.getAccessToken()), "发行订单审核");
}

//校验发行订单是否存在
private IssueOrderinfo checkOrder(String orderNo) throws ManagerException {
IssueOrderinfo order = issueOrderinfoRepo.findByOrderNo(orderNo);

Loading…
取消
儲存