|
@@ -243,10 +243,10 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
@Override
|
|
|
public List<OrderInfo> getAssociatedOrder(OrderInfo orderInfo) {
|
|
|
//根据司机用户id和货主用户id查询
|
|
|
- List<OrderInfo> orderInfoList = this.selectList(new EntityWrapper<OrderInfo>().eq("common_id",orderInfo.getCommonId())
|
|
|
- .eq("cargo_common_id",orderInfo.getCargoCommonId()).eq("delete_flag","0")
|
|
|
- .orderBy("update_date",false));
|
|
|
- if (CollectionUtils.isNotEmpty(orderInfoList)){
|
|
|
+ List<OrderInfo> orderInfoList = this.selectList(new EntityWrapper<OrderInfo>().eq("common_id", orderInfo.getCommonId())
|
|
|
+ .eq("cargo_common_id", orderInfo.getCargoCommonId()).eq("delete_flag", "0")
|
|
|
+ .orderBy("update_date", false));
|
|
|
+ if (CollectionUtils.isNotEmpty(orderInfoList)) {
|
|
|
return orderInfoList;
|
|
|
}
|
|
|
List<OrderInfo> orderInfoList1 = new ArrayList<>();
|
|
@@ -261,6 +261,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public OrderInfo selectHaoPing(String commonId, String evaluateFlag) {
|
|
|
OrderInfo orderInfo = new OrderInfo();
|
|
|
//好评率
|
|
@@ -352,6 +353,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public OrderInfo getOrderInfo(String id) {
|
|
|
//基本信息
|
|
|
OrderInfo orderInfo = this.selectById(id);
|
|
@@ -401,15 +403,15 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
if (publishTaskInfo != null) {
|
|
|
orderInfo.setPublishTaskInfo(publishTaskInfo);
|
|
|
}
|
|
|
- if (orderInfo.getCompId() != null){
|
|
|
+ if (orderInfo.getCompId() != null) {
|
|
|
//查询公司
|
|
|
HyCompanyInfo hyCompanyInfo = companyInfoService.selectById(orderInfo.getCompId());
|
|
|
orderInfo.setHyCompanyInfo(hyCompanyInfo);
|
|
|
}
|
|
|
//查询车牌颜色
|
|
|
HyDriverCarInfo hyDriverCarInfo = driverCarInfoService.selectOne(new EntityWrapper<HyDriverCarInfo>()
|
|
|
- .eq("car_number",hyCarrierInfo.getCarNo()).eq("delete_flag","0"));
|
|
|
- if (hyDriverCarInfo != null){
|
|
|
+ .eq("car_number", hyCarrierInfo.getCarNo()).eq("delete_flag", "0"));
|
|
|
+ if (hyDriverCarInfo != null) {
|
|
|
orderInfo.setCarNumberColour(hyDriverCarInfo.getCarNumberColour());
|
|
|
}
|
|
|
return orderInfo;
|
|
@@ -507,18 +509,19 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
* examineFlag
|
|
|
*/
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public String confirmFreight(OrderInfo orderInfo) {
|
|
|
//查询订单
|
|
|
OrderInfo orderInfo1 = this.selectById(orderInfo.getId());
|
|
|
if (orderInfo1 != null) {
|
|
|
//货主
|
|
|
- if("1".equals(orderInfo.getTypeFlag())){
|
|
|
+ if ("1".equals(orderInfo.getTypeFlag())) {
|
|
|
orderInfo1.setOrderStatus(StatusEnum.DRIVER_CONFIRM_FREIGHT.getName());
|
|
|
orderInfo1.setOrderStatusKey(StatusEnum.DRIVER_CONFIRM_FREIGHT.getFlag());
|
|
|
orderInfo1.setCargoOwnerStatus(StatusEnum.DRIVER_NOT_CONFIRM_FREIGHT.getName());
|
|
|
orderInfo1.setCargoOwnerStatusKey(StatusEnum.DRIVER_NOT_CONFIRM_FREIGHT.getFlag());
|
|
|
//修改承运表合计应付运费
|
|
|
- HyCarrierInfo hyCarrierInfo = carrierInfoService.selectOne(new EntityWrapper<HyCarrierInfo>().eq("order_id",orderInfo1.getId())
|
|
|
+ HyCarrierInfo hyCarrierInfo = carrierInfoService.selectOne(new EntityWrapper<HyCarrierInfo>().eq("order_id", orderInfo1.getId())
|
|
|
.eq("delete_flag", "0"));
|
|
|
hyCarrierInfo.setTotalFreight(orderInfo.getTotalFreight());
|
|
|
carrierInfoService.updateById(hyCarrierInfo);
|
|
@@ -535,14 +538,14 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
}
|
|
|
//查询订单是否垫付
|
|
|
//非垫付订单
|
|
|
- if("0".equals(orderInfo1.getFreightAdvance())){
|
|
|
- if (freightInfo1.getPrepaidFreight() > hyCarrierInfo.getTotalFreight()){
|
|
|
+ if ("0".equals(orderInfo1.getFreightAdvance())) {
|
|
|
+ if (freightInfo1.getPrepaidFreight() > hyCarrierInfo.getTotalFreight()) {
|
|
|
//预付运费大于实际运费
|
|
|
throw new YException(YExceptionEnum.TOTAL_BIG_PREPAID);
|
|
|
}
|
|
|
//查询费用信息
|
|
|
FreightInfo freightInfo = freightInfoService.selectOne(new EntityWrapper<FreightInfo>()
|
|
|
- .eq("order_id",orderInfo1.getId()).eq("delete_flag","0"));
|
|
|
+ .eq("order_id", orderInfo1.getId()).eq("delete_flag", "0"));
|
|
|
//尾款
|
|
|
Double weikuan = freightInfo.getActualFreight() - freightInfo.getPrepaidFreight();
|
|
|
//尾款+服务费
|
|
@@ -555,35 +558,34 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
hyFreezingMoneyInfo.setType("冻结");
|
|
|
hyFreezingMoneyInfo.setAmountMoney(zong);
|
|
|
|
|
|
- if (orderInfo1.getCompId() != null && !orderInfo1.getCompId().isEmpty()){
|
|
|
+ if (orderInfo1.getCompId() != null && !orderInfo1.getCompId().isEmpty()) {
|
|
|
//货主是公司
|
|
|
HyCompanyInfo hyCompanyInfo = companyInfoService.selectById(orderInfo1.getCompId());
|
|
|
- if (hyCompanyInfo.getAccountBalance() < zong){
|
|
|
+ if (hyCompanyInfo.getAccountBalance() < zong) {
|
|
|
//账户余额小于尾款+服务费
|
|
|
throw new YException(YExceptionEnum.INSUFFICIENT_ACCOUNT_BALANCES);
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
//冻结公司账户余额
|
|
|
Double d = hyCompanyInfo.getAccountBalance();
|
|
|
Double d1 = hyCompanyInfo.getFrozenAmount();
|
|
|
- hyCompanyInfo.setAccountBalance(d-zong);
|
|
|
- hyCompanyInfo.setFrozenAmount(d1+zong);
|
|
|
+ hyCompanyInfo.setAccountBalance(d - zong);
|
|
|
+ hyCompanyInfo.setFrozenAmount(d1 + zong);
|
|
|
companyInfoService.updateById(hyCompanyInfo);
|
|
|
hyFreezingMoneyInfo.setCompanyId(hyCompanyInfo.getId());
|
|
|
}
|
|
|
- }
|
|
|
- else {
|
|
|
+ } else {
|
|
|
//货主是个人
|
|
|
HyCargoOwnerInfo hyCargoOwnerInfo = cargoOwnerInfoService.selectOne(new EntityWrapper<HyCargoOwnerInfo>()
|
|
|
- .eq("common_id",orderInfo1.getCargoCommonId()).eq("delete_flag","0"));
|
|
|
- if (hyCargoOwnerInfo.getAccountBalance() < zong){
|
|
|
+ .eq("common_id", orderInfo1.getCargoCommonId()).eq("delete_flag", "0"));
|
|
|
+ if (hyCargoOwnerInfo.getAccountBalance() < zong) {
|
|
|
//账户余额小于尾款+服务费
|
|
|
throw new YException(YExceptionEnum.INSUFFICIENT_ACCOUNT_BALANCES);
|
|
|
- }else {
|
|
|
+ } else {
|
|
|
//冻结公司账户余额
|
|
|
Double d = hyCargoOwnerInfo.getAccountBalance();
|
|
|
Double d1 = hyCargoOwnerInfo.getFrozenAmount();
|
|
|
- hyCargoOwnerInfo.setAccountBalance(d-zong);
|
|
|
- hyCargoOwnerInfo.setFrozenAmount(d1+zong);
|
|
|
+ hyCargoOwnerInfo.setAccountBalance(d - zong);
|
|
|
+ hyCargoOwnerInfo.setFrozenAmount(d1 + zong);
|
|
|
cargoOwnerInfoService.updateById(hyCargoOwnerInfo);
|
|
|
hyFreezingMoneyInfo.setCommonId(hyCargoOwnerInfo.getCommonId());
|
|
|
}
|
|
@@ -594,7 +596,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
//司机
|
|
|
else {
|
|
|
//通过
|
|
|
- if ("1".equals(orderInfo.getExamineFlag())){
|
|
|
+ if ("1".equals(orderInfo.getExamineFlag())) {
|
|
|
orderInfo1.setOrderStatusKey(StatusEnum.PLATFORM_CONFIRMED_UNLOAD.getFlag());
|
|
|
orderInfo1.setOrderStatus(StatusEnum.PLATFORM_CONFIRMED_UNLOAD.getName());
|
|
|
orderInfo1.setCargoOwnerStatusKey(StatusEnum.PLATFORM_CONFIRMED_UNLOAD.getFlag());
|
|
@@ -663,6 +665,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public String editEnd(OrderInfo orderInfo) throws IOException {
|
|
|
//查询订单
|
|
|
OrderInfo orderInfo1 = this.selectById(orderInfo.getId());
|
|
@@ -685,16 +688,6 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
//查询费用表
|
|
|
FreightInfo freightInfo = freightInfoService.selectOne(new EntityWrapper<FreightInfo>().eq("order_id", orderInfo1.getId())
|
|
|
.eq("delete_flag", "0"));
|
|
|
- //司机承运次数+1,计算累计支付运费
|
|
|
- HyDriverInfo hyDriverInfo = driverInfoService.selectOne(new EntityWrapper<HyDriverInfo>()
|
|
|
- .eq("common_id", orderInfo1.getCommonId()).eq("delete_flag", "0"));
|
|
|
- if (hyDriverInfo != null) {
|
|
|
- Long count = hyDriverInfo.getShipmentsNumber() + 1;
|
|
|
- hyDriverInfo.setShipmentsNumber(count);
|
|
|
- Double d = hyDriverInfo.getAccumulatedFreight();
|
|
|
- hyDriverInfo.setAccumulatedFreight(d + freightInfo.getActualFreight() - freightInfo.getDriverServiceCharge());
|
|
|
- driverInfoService.updateById(hyDriverInfo);
|
|
|
- }
|
|
|
//货主发运次数+1,计算累计支付运费
|
|
|
HyCargoOwnerInfo hyCargoOwnerInfo = cargoOwnerInfoService.selectOne(new EntityWrapper<HyCargoOwnerInfo>()
|
|
|
.eq("common_id", orderInfo1.getCargoCommonId()).eq("delete_flag", "0"));
|
|
@@ -716,6 +709,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public String orderReceiving(OrderInfo orderInfo) {
|
|
|
//查询订单
|
|
|
OrderInfo orderInfo1 = this.selectById(orderInfo.getId());
|
|
@@ -827,6 +821,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public String postponeReporting(OrderInfo orderInfo) {
|
|
|
List<OrderInfo> orderInfos = orderInfo.getOrderInfoList();
|
|
|
if (CollectionUtils.isNotEmpty(orderInfos)) {
|
|
@@ -843,17 +838,19 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
|
|
|
/**
|
|
|
* 运单批量上报
|
|
|
+ *
|
|
|
* @param orderInfo
|
|
|
* @return
|
|
|
* @throws IOException
|
|
|
* @throws ParseException
|
|
|
*/
|
|
|
@Override
|
|
|
- public String batchSubmission (OrderInfo orderInfo) throws IOException {
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
+ public String batchSubmission(OrderInfo orderInfo) throws IOException {
|
|
|
//获取token
|
|
|
String token = EntityAnalyse.GetJTToken();
|
|
|
- if (CollectionUtils.isNotEmpty(orderInfo.getOrderInfoList())){
|
|
|
- for (OrderInfo orderInfo1 : orderInfo.getOrderInfoList()){
|
|
|
+ if (CollectionUtils.isNotEmpty(orderInfo.getOrderInfoList())) {
|
|
|
+ for (OrderInfo orderInfo1 : orderInfo.getOrderInfoList()) {
|
|
|
//上报
|
|
|
orderInfo1.setToken(token);
|
|
|
EntityAnalyse.uploadWaybill(orderInfo1);
|
|
@@ -873,6 +870,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
* @return
|
|
|
*/
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public String examine(OrderInfo orderInfo) throws ParseException {
|
|
|
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
String Time = df.format(new Date());
|
|
@@ -896,7 +894,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
freightInfo.setPayabledFreight(0d);
|
|
|
freightInfo.setNopayableFreight(freightInfo.getPayableFreight());
|
|
|
//判断是否是垫付订单
|
|
|
- if ("0".equals(orderInfo1.getFreightAdvance())){
|
|
|
+ if ("0".equals(orderInfo1.getFreightAdvance())) {
|
|
|
//非垫付订单
|
|
|
freightInfo.setPrepaidFreight(orderInfo1.getAdvanceCharge());
|
|
|
freightInfo.setReceivableFreight(orderInfo1.getAdvanceCharge());
|
|
@@ -950,16 +948,24 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
}
|
|
|
}
|
|
|
hyFreezingMoneyInfoService.insert(hyFreezingMoneyInfo);
|
|
|
+ //计算货主累计支付运费
|
|
|
+ HyCargoOwnerInfo hyCargoOwnerInfo = cargoOwnerInfoService.selectOne(new EntityWrapper<HyCargoOwnerInfo>()
|
|
|
+ .eq("common_id", orderInfo1.getCargoCommonId()).eq("delete_flag", "0"));
|
|
|
+ if (hyCargoOwnerInfo != null) {
|
|
|
+ Double d3 = hyCargoOwnerInfo.getAccumulatedFreight();
|
|
|
+ hyCargoOwnerInfo.setAccumulatedFreight(d3 + orderInfo1.getAdvanceCharge());
|
|
|
+ cargoOwnerInfoService.updateById(hyCargoOwnerInfo);
|
|
|
+ }
|
|
|
}
|
|
|
freightInfoService.insert(freightInfo);
|
|
|
//如果应付款大于0,生成司机运费结算信息
|
|
|
- if (freightInfo.getPayableFreight()!= null &&freightInfo.getPayableFreight() != 0) {
|
|
|
+ if (freightInfo.getPayableFreight() != null && freightInfo.getPayableFreight() != 0) {
|
|
|
HyFreightSettlementInfo hyFreightSettlementInfo = new HyFreightSettlementInfo();
|
|
|
hyFreightSettlementInfo.setId(IdGenerator.generateUUID());
|
|
|
hyFreightSettlementInfo.setCommonId(orderInfo1.getCommonId());
|
|
|
hyFreightSettlementInfo.setOrderId(orderInfo1.getId());
|
|
|
hyFreightSettlementInfo.setOrderNo(orderInfo1.getOrderNo());
|
|
|
- hyFreightSettlementInfo.setDocumentNo(orderInfo1.getOrderNo().replace("CY","ZJLS"));
|
|
|
+ hyFreightSettlementInfo.setDocumentNo(orderInfo1.getOrderNo().replace("CY", "ZJLS"));
|
|
|
hyFreightSettlementInfo.setFreightAdvance(orderInfo1.getFreightAdvance());
|
|
|
hyFreightSettlementInfo.setDriverName(orderInfo1.getDriverName());
|
|
|
hyFreightSettlementInfo.setBankCard(orderInfo1.getBankCard());
|
|
@@ -1087,16 +1093,6 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
hyCargoOwnerCapitalInfoService.insert(hyCargoOwnerCapitalInfo);
|
|
|
}
|
|
|
hyFreezingMoneyInfoService.insert(hyFreezingMoneyInfo);
|
|
|
- //司机承运次数+1,计算累计支付运费
|
|
|
- HyDriverInfo hyDriverInfo = driverInfoService.selectOne(new EntityWrapper<HyDriverInfo>()
|
|
|
- .eq("common_id", orderInfo1.getCommonId()).eq("delete_flag", "0"));
|
|
|
- if (hyDriverInfo != null) {
|
|
|
- Long count = hyDriverInfo.getShipmentsNumber() + 1;
|
|
|
- hyDriverInfo.setShipmentsNumber(count);
|
|
|
- Double d2 = hyDriverInfo.getAccumulatedFreight();
|
|
|
- hyDriverInfo.setAccumulatedFreight(d2 + freightInfo.getActualFreight() - freightInfo.getDriverServiceCharge());
|
|
|
- driverInfoService.updateById(hyDriverInfo);
|
|
|
- }
|
|
|
//货主发运次数+1,计算累计支付运费
|
|
|
HyCargoOwnerInfo hyCargoOwnerInfo = cargoOwnerInfoService.selectOne(new EntityWrapper<HyCargoOwnerInfo>()
|
|
|
.eq("common_id", orderInfo1.getCargoCommonId()).eq("delete_flag", "0"));
|
|
@@ -1104,7 +1100,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
Long count = hyCargoOwnerInfo.getShipmentsNumber() + 1;
|
|
|
hyCargoOwnerInfo.setShipmentsNumber(count);
|
|
|
Double d3 = hyCargoOwnerInfo.getAccumulatedFreight();
|
|
|
- hyCargoOwnerInfo.setAccumulatedFreight(d3 + freightInfo.getActualFreight() + freightInfo.getOwnerServiceCharge());
|
|
|
+ hyCargoOwnerInfo.setAccumulatedFreight(d3 + freightInfo.getOwnerFreightBalance() + freightInfo.getOwnerServiceCharge());
|
|
|
cargoOwnerInfoService.updateById(hyCargoOwnerInfo);
|
|
|
}
|
|
|
}
|
|
@@ -1121,7 +1117,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
hyFreightSettlementInfo.setCommonId(orderInfo1.getCommonId());
|
|
|
hyFreightSettlementInfo.setOrderId(orderInfo1.getId());
|
|
|
hyFreightSettlementInfo.setOrderNo(orderInfo1.getOrderNo());
|
|
|
- hyFreightSettlementInfo.setDocumentNo(orderInfo1.getOrderNo().replace("CY","ZJLS"));
|
|
|
+ hyFreightSettlementInfo.setDocumentNo(orderInfo1.getOrderNo().replace("CY", "ZJLS"));
|
|
|
hyFreightSettlementInfo.setFreightAdvance(orderInfo1.getFreightAdvance());
|
|
|
hyFreightSettlementInfo.setDriverName(orderInfo1.getDriverName());
|
|
|
hyFreightSettlementInfo.setBankCard(orderInfo1.getBankCard());
|
|
@@ -1216,9 +1212,9 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
|
|
|
else {
|
|
|
//查询车辆信息
|
|
|
HyDriverCarInfo hyDriverCarInfo = driverCarInfoService.selectOne(new EntityWrapper<HyDriverCarInfo>().eq("car_number", orderInfo.getCarNumber())
|
|
|
- .eq("common_id",orderInfo1.getCommonId()).eq("delete_flag", "0"));
|
|
|
+ .eq("common_id", orderInfo1.getCommonId()).eq("delete_flag", "0"));
|
|
|
//车辆不存在
|
|
|
- if (hyDriverCarInfo == null){
|
|
|
+ if (hyDriverCarInfo == null) {
|
|
|
throw new YException(YExceptionEnum.CAR_NOT_EXIST);
|
|
|
}
|
|
|
//查询车辆核定载重量
|