提交 d846e591 authored 作者: aiqingguo's avatar aiqingguo

Merge branch 'v9.6_network_small_version_20240102' into test

# Conflicts: # performance-web/src/main/java/com/clx/performance/controller/temp/TempController.java
package com.clx.performance.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Objects;
import java.util.Optional;
public enum TransportSyncTypeEnum {
;
@Getter
@AllArgsConstructor
public enum Type {
NO_PASS(1, "未通过风控异常"),
EXCEPTION(2, "同步异常"),
;
private final Integer code;
private final String msg;
public static Optional<Type> getByCode(Integer code) {
return Arrays.stream(values()).filter(e -> Objects.equals(e.getCode(), code)).findFirst();
}
public static Optional<Type> getByName(String name) {
return Arrays.stream(values()).filter(e -> Objects.equals(e.getMsg(), name)).findFirst();
}
public static Integer getCodeByName(String name) {
return getByName(name).map(TransportSyncTypeEnum.Type::getCode).orElse(3);
}
}
}
package com.clx.performance.param.feign.transport;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
@NoArgsConstructor
public class ThirdOrderChildInvoiceStatusDTO {
@ApiModelProperty(value = "开票状态:0未开票 1已开票 2运单不存在")
private Integer status;
}
package com.clx.performance.param.feign.transport;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import javax.validation.constraints.NotBlank;
@Getter
@Setter
@ToString
@NoArgsConstructor
public class ThirdOrderChildInvoiceStatusParam {
@ApiModelProperty(value = "运单编号")
@NotBlank(message = "运单编号不能为空")
private String childNo;
}
package com.clx.performance.param.feign.transport;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
@NoArgsConstructor
public class ThirdOrderChildRiskStatusDTO {
@ApiModelProperty(value = "运单编号")
private String childNo;
@ApiModelProperty(value = "合规状态:0不合规 1合规 2未同步 ")
private Integer status;
@ApiModelProperty(value = "风控原因")
private String riskReason;
}
...@@ -6,6 +6,8 @@ import lombok.NoArgsConstructor; ...@@ -6,6 +6,8 @@ import lombok.NoArgsConstructor;
import lombok.Setter; import lombok.Setter;
import lombok.ToString; import lombok.ToString;
import javax.validation.constraints.NotBlank;
@Getter @Getter
@Setter @Setter
@ToString @ToString
...@@ -13,13 +15,7 @@ import lombok.ToString; ...@@ -13,13 +15,7 @@ import lombok.ToString;
public class ThirdOrderChildRiskStatusParam { public class ThirdOrderChildRiskStatusParam {
@ApiModelProperty(value = "运单编号") @ApiModelProperty(value = "运单编号")
@NotBlank(message = "运单编号不能为空")
private String childNo; private String childNo;
@ApiModelProperty(value = "合规状态:0不合规 1合规 2未同步 ")
private Integer status;
@ApiModelProperty(value = "风控原因")
private String riskReason;
} }
...@@ -115,4 +115,29 @@ public class RabbitBeanConfig { ...@@ -115,4 +115,29 @@ public class RabbitBeanConfig {
public Binding orderCancelExchangeBind() { public Binding orderCancelExchangeBind() {
return BindingBuilder.bind(orderCancelQueue()).to(orderCancelExchange()).with(RabbitKeyConstants.ORDER_CANCEL_ROUTE_KEY); return BindingBuilder.bind(orderCancelQueue()).to(orderCancelExchange()).with(RabbitKeyConstants.ORDER_CANCEL_ROUTE_KEY);
} }
/**
* 运单同步网络货运队列
* @return
*/
@Bean
public Queue orderChildSyncTransportQueue() {
return new Queue(RabbitKeyConstants.ORDER_CHILD_SYNC_TRANSPORT_QUEUE, true, false, false);
}
/**
* 运单同步网络货运交换机
**/
@Bean
public DirectExchange orderChildSyncTransportExchange() {
return new DirectExchange(RabbitKeyConstants.ORDER_CHILD_SYNC_TRANSPORT_EXCHANGE);
}
/**
* 运单同步网络货运绑定
*/
@Bean
public Binding orderChildSyncTransportExchangeBind() {
return BindingBuilder.bind(orderChildSyncTransportQueue()).to(orderChildSyncTransportExchange()).with(RabbitKeyConstants.ORDER_CHILD_SYNC_TRANSPORT_ROUTE_KEY);
}
} }
...@@ -63,6 +63,12 @@ public class RabbitKeyConstants { ...@@ -63,6 +63,12 @@ public class RabbitKeyConstants {
public static final String ORDER_LARGE_SCREEN_QUEUE ="clx-order.order.large.screen.queue"; public static final String ORDER_LARGE_SCREEN_QUEUE ="clx-order.order.large.screen.queue";
public static final String ORDER_CHILD_SYNC_TRANSPORT_QUEUE ="clx-order.order.child.sync.transport.queue";
public static final String ORDER_CHILD_SYNC_TRANSPORT_EXCHANGE ="clx-order.order.child.sync.transport.exchange";
public static final String ORDER_CHILD_SYNC_TRANSPORT_ROUTE_KEY ="clx-order.order.child.sync.transport.route.key";
// 预付运费和保证金 自动冻结 触发消息队列 // 预付运费和保证金 自动冻结 触发消息队列
public static final String FREEZE_TRIGGER_EXCHANGE = "clx-order.freeze.trigger.exchange"; public static final String FREEZE_TRIGGER_EXCHANGE = "clx-order.freeze.trigger.exchange";
......
...@@ -162,7 +162,7 @@ public class OwnerAccountController { ...@@ -162,7 +162,7 @@ public class OwnerAccountController {
@ApiOperation(value = "创建账户", notes = "<br>By:胡宇帆") @ApiOperation(value = "创建账户", notes = "<br>By:胡宇帆")
@PostMapping("/createAccount") @PostMapping("/createAccount")
public Result<Object> createAccount(CreteAccountParam param) { public Result<Object> createAccount(@RequestBody CreteAccountParam param) {
ownerAccountService.createAccount(param); ownerAccountService.createAccount(param);
return Result.ok(); return Result.ok();
} }
......
...@@ -18,7 +18,7 @@ import com.clx.performance.model.OrderGoods; ...@@ -18,7 +18,7 @@ import com.clx.performance.model.OrderGoods;
import com.clx.performance.model.settle.SettlementDriverDetail; import com.clx.performance.model.settle.SettlementDriverDetail;
import com.clx.performance.model.settle.SettlementOwnerDetail; import com.clx.performance.model.settle.SettlementOwnerDetail;
import com.clx.performance.param.feign.transport.ThirdOrderChildBrokerParam; import com.clx.performance.param.feign.transport.ThirdOrderChildBrokerParam;
import com.clx.performance.param.feign.transport.ThirdOrderChildRiskStatusParam; import com.clx.performance.param.feign.transport.ThirdOrderChildRiskStatusDTO;
import com.clx.performance.service.TransportSyncService; import com.clx.performance.service.TransportSyncService;
import com.clx.performance.service.settle.OrderChildSyncTransportRecordService; import com.clx.performance.service.settle.OrderChildSyncTransportRecordService;
import com.clx.performance.service.settle.SettlementOwnerService; import com.clx.performance.service.settle.SettlementOwnerService;
...@@ -103,7 +103,7 @@ public class TransportSyncController { ...@@ -103,7 +103,7 @@ public class TransportSyncController {
log.info("riskStatusNotify 原始报文:{}", bean); log.info("riskStatusNotify 原始报文:{}", bean);
String decrypt = ThirdComponent.decrypt(bean.getData()); String decrypt = ThirdComponent.decrypt(bean.getData());
log.info("riskStatusNotify 解密后:{}", decrypt); log.info("riskStatusNotify 解密后:{}", decrypt);
ThirdOrderChildRiskStatusParam invoicingStatusNotifyDTO = JSONUtil.toBean(decrypt, ThirdOrderChildRiskStatusParam.class); ThirdOrderChildRiskStatusDTO invoicingStatusNotifyDTO = JSONUtil.toBean(decrypt, ThirdOrderChildRiskStatusDTO.class);
return ThirdComponent.encrypt(JSON.toJSONString(Result.ok())); return ThirdComponent.encrypt(JSON.toJSONString(Result.ok()));
} }
......
...@@ -7,6 +7,7 @@ import com.clx.performance.config.MslPaymentConfig; ...@@ -7,6 +7,7 @@ import com.clx.performance.config.MslPaymentConfig;
import com.clx.performance.feign.TransportFeignService; import com.clx.performance.feign.TransportFeignService;
import com.clx.performance.param.feign.transport.OrderChildPaySyncParam; import com.clx.performance.param.feign.transport.OrderChildPaySyncParam;
import com.clx.performance.param.feign.transport.OwnerSettlementSyncParam; import com.clx.performance.param.feign.transport.OwnerSettlementSyncParam;
import com.clx.performance.param.feign.transport.ThirdOrderChildRiskStatusParam;
import com.clx.performance.service.TempService; import com.clx.performance.service.TempService;
import com.clx.performance.service.child.FeignOrderChildService; import com.clx.performance.service.child.FeignOrderChildService;
import com.clx.performance.vo.pc.child.OrderChildLineStatisticsVO; import com.clx.performance.vo.pc.child.OrderChildLineStatisticsVO;
...@@ -116,8 +117,9 @@ public class TempController { ...@@ -116,8 +117,9 @@ public class TempController {
@ApiOperation(value = "获取风控状态 (临时接口)", notes = "<br>By:艾庆国") @ApiOperation(value = "获取风控状态 (临时接口)", notes = "<br>By:艾庆国")
@RequestMapping(value = "/getRiskStatus", method = RequestMethod.POST) @RequestMapping(value = "/getRiskStatus", method = RequestMethod.POST)
public Result<Void> getRiskStatus(String childNo) { public Result<Void> getRiskStatus(String childNo) {
ThirdOrderChildRiskStatusParam param = new ThirdOrderChildRiskStatusParam();
HttpDTO httpDTO = transportFeignService.getRiskStatus(childNo); param.setChildNo(childNo);
HttpDTO httpDTO = transportFeignService.getRiskStatus(param);
String decrypt = ThirdComponent.decrypt(httpDTO.getData()); String decrypt = ThirdComponent.decrypt(httpDTO.getData());
log.info("{}", decrypt); log.info("{}", decrypt);
return Result.ok(); return Result.ok();
......
package com.clx.performance.dao;
import com.msl.common.dao.BaseDao;
import com.clx.performance.mapper.OrderChildSyncTransportInvoiceRecordMapper;
import com.clx.performance.model.OrderChildSyncTransportInvoiceRecord;
/**
* @author kavin
* Date 2024-01-03
* Time 10:17
*/
public interface OrderChildSyncTransportInvoiceRecordDao extends BaseDao<OrderChildSyncTransportInvoiceRecordMapper, OrderChildSyncTransportInvoiceRecord, Integer> {
}
package com.clx.performance.dao.impl;
import com.msl.common.dao.impl.BaseDaoImpl;
import com.clx.performance.dao.OrderChildSyncTransportInvoiceRecordDao;
import com.clx.performance.mapper.OrderChildSyncTransportInvoiceRecordMapper;
import com.clx.performance.model.OrderChildSyncTransportInvoiceRecord;
import org.springframework.stereotype.Repository;
/**
* @author kavin
* Date 2024-01-03
* Time 10:17
*/
@Repository
public class OrderChildSyncTransportInvoiceRecordDaoImpl extends BaseDaoImpl<OrderChildSyncTransportInvoiceRecordMapper, OrderChildSyncTransportInvoiceRecord, Integer> implements OrderChildSyncTransportInvoiceRecordDao {
}
...@@ -32,6 +32,9 @@ public class NetworkDriverRunningWaterRecordDaoImpl extends BaseDaoImpl<NetworkD ...@@ -32,6 +32,9 @@ public class NetworkDriverRunningWaterRecordDaoImpl extends BaseDaoImpl<NetworkD
@Override @Override
public IPage<APPNetworkDriverRunningWaterRecordVO> pageFrozenList(NetworkDriverPageParam param) { public IPage<APPNetworkDriverRunningWaterRecordVO> pageFrozenList(NetworkDriverPageParam param) {
Page<APPNetworkDriverRunningWaterRecordVO> page = Page.of(param.getPage(), param.getPageSize()); Page<APPNetworkDriverRunningWaterRecordVO> page = Page.of(param.getPage(), param.getPageSize());
for (APPNetworkDriverRunningWaterRecordVO record : page.getRecords()) {
record.setAlterationBalance(record.getAlterationBalance().negate());
}
return baseMapper.pageFrozenList(page, param); return baseMapper.pageFrozenList(page, param);
} }
......
...@@ -10,8 +10,6 @@ import org.springframework.web.bind.annotation.RequestMapping; ...@@ -10,8 +10,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestMethod;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.util.List;
@FeignClient(name = "transport-service-yitu", url = "${transport-service.host}", configuration = FeignInterceptor.class) @FeignClient(name = "transport-service-yitu", url = "${transport-service.host}", configuration = FeignInterceptor.class)
public interface TransportFeignService { public interface TransportFeignService {
...@@ -25,10 +23,10 @@ public interface TransportFeignService { ...@@ -25,10 +23,10 @@ public interface TransportFeignService {
/** /**
* 获取风控状态 * 获取风控状态
* @return * @return
* @see com.clx.performance.param.feign.transport.ThirdOrderChildRiskStatusParam * @see ThirdOrderChildRiskStatusDTO
*/ */
@RequestMapping(value = "/transport-service/thirdParty/order/getRiskStatus", method = RequestMethod.POST) @RequestMapping(value = "/transport-service/thirdParty/order/getRiskStatus", method = RequestMethod.POST)
HttpDTO getRiskStatus(@RequestBody @NotBlank(message = "运单编号不能为空") String childNo); HttpDTO getRiskStatus(@RequestBody ThirdOrderChildRiskStatusParam param);
/** /**
* 运单支付运费同步 * 运单支付运费同步
...@@ -38,10 +36,11 @@ public interface TransportFeignService { ...@@ -38,10 +36,11 @@ public interface TransportFeignService {
/** /**
* 获取运单开票状态 * 获取运单开票状态
* @return 0-未申请,10-已申请,20-审核失败,30-已开票 * @return
* @see ThirdOrderChildInvoiceStatusDTO
*/ */
@RequestMapping(value = "/transport-service/thirdParty/order/getInvoiceStatus", method = RequestMethod.POST) @RequestMapping(value = "/transport-service/thirdParty/order/getInvoiceStatus", method = RequestMethod.POST)
Result<Integer> getInvoiceStatus(@RequestBody @NotBlank(message = "运单编号不能为空") String childNo); HttpDTO getInvoiceStatus(@RequestBody ThirdOrderChildInvoiceStatusParam param);
/** /**
* 货主结算单同步 (只推同一货主) * 货主结算单同步 (只推同一货主)
......
package com.clx.performance.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.clx.performance.model.OrderChildSyncTransportInvoiceRecord;
/**
* @author kavin
* Date 2024-01-03
* Time 10:17
*/
public interface OrderChildSyncTransportInvoiceRecordMapper extends BaseMapper<OrderChildSyncTransportInvoiceRecord> {
}
package com.clx.performance.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.msl.common.config.KeyColumn;
import com.msl.common.model.HasKey;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
/**
* @author kavin
* Date 2024-01-03
* Time 10:17
*/
@Getter
@Setter
@Accessors(chain = true)
@TableName("order_child_sync_transport_invoice_record")
public class OrderChildSyncTransportInvoiceRecord implements HasKey<Integer> {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@TableField("child_no")
@ApiModelProperty("运单编号")
private String childNo;
@TableField("remark")
@ApiModelProperty("备注")
private String remark;
@TableField("type 1: 未风控 2: 同步异常")
@ApiModelProperty("备注")
private Integer type;
@TableField("create_time")
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@TableField("modified_time")
@ApiModelProperty("修改时间")
private LocalDateTime modifiedTime;
@Override
@KeyColumn("id")
public Integer gainKey() {
return this.id;
}
}
package com.clx.performance.service;
import com.msl.common.service.BaseService;
import com.clx.performance.model.OrderChildSyncTransportInvoiceRecord;
/**
* @author kavin
* Date 2024-01-03
* Time 10:17
*/
public interface OrderChildSyncTransportInvoiceRecordService {
}
package com.clx.performance.service.impl;
import com.clx.performance.service.OrderChildSyncTransportInvoiceRecordService;
import org.springframework.stereotype.Service;
/**
* @author kavin
* Date 2024-01-03
* Time 10:17
*/
@Service
public class OrderChildSyncTransportInvoiceRecordServiceImpl implements OrderChildSyncTransportInvoiceRecordService {
}
...@@ -131,7 +131,7 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic ...@@ -131,7 +131,7 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
} }
} }
else { else {
log.info("结初始化货主结算单"); log.info("拉运完成结初始化货主结算单");
settlementOwner = settlementOwnerDao.selectUnlockOfSettlementPeriodImmediate(settlementOwnerDetail.getOrderNo(), settlementOwnerDetail.getInvoiceType()).orNull(); settlementOwner = settlementOwnerDao.selectUnlockOfSettlementPeriodImmediate(settlementOwnerDetail.getOrderNo(), settlementOwnerDetail.getInvoiceType()).orNull();
if (settlementOwner == null){ // 拉运完成初始化 if (settlementOwner == null){ // 拉运完成初始化
...@@ -149,12 +149,12 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic ...@@ -149,12 +149,12 @@ public class SettlementMqHandlerServiceImpl implements SettlementMqHandlerServic
if (!settlementDriverDetail.getInvoiceType().equals(SettlementOwnerEnum.InvoiceType.ONLINE.getCode())) { if (!settlementDriverDetail.getInvoiceType().equals(SettlementOwnerEnum.InvoiceType.ONLINE.getCode())) {
paySettlementDriver(settlementDriverDetail); paySettlementDriver(settlementDriverDetail);
} else { } else {
if (settlementDriverDetail.getPrepayFreightFlag().equals(SettlementDriverEnum.PrepayFreightFlag.PAYED.getCode()) // if (settlementDriverDetail.getPrepayFreightFlag().equals(SettlementDriverEnum.PrepayFreightFlag.PAYED.getCode())
&& settlementDriverDetail.getPrepayFreight().compareTo(BigDecimal.ZERO) > 0) { // && settlementDriverDetail.getPrepayFreight().compareTo(BigDecimal.ZERO) > 0) {
settlementDriverDetail.setSettlementNo(settlementNo); settlementDriverDetail.setSettlementNo(settlementNo);
//插入同步网络货运待支付记录 //插入同步网络货运待支付记录
childSyncTransportRecordService.addOrderChildSyncTransportRecord(settlementDriverDetail); childSyncTransportRecordService.addOrderChildSyncTransportRecord(settlementDriverDetail);
} // }
} }
// 更新结算单 // 更新结算单
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论