提交 c28cd6ca authored 作者: liruixin's avatar liruixin

货主确认结算单

上级 1d596c38
......@@ -67,6 +67,8 @@ public enum PerformanceResultEnum implements ResultEnum {
ORDER_CHILD_CANCEL_FORBID_COUNT(1383, "今日取消运单次数超过上限,暂时无法取消"),
ORDER_GOODS_ID_GENERATE_LOCK(1384, "货单编号ID获取锁出问题"),
SETTLEMENT_ORDER_STATUS_CHANGED(1401, "结算单状态已变更,请重新刷新页面"),
;
......
package com.clx.performance.enums;
package com.clx.performance.enums.settle;
import lombok.AllArgsConstructor;
import lombok.Getter;
......
package com.clx.performance.param.pc.owner;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import javax.validation.constraints.NotNull;
/**
* @Author liruixin
* @create 2023-09-19 13:33
*/
@Getter
@Setter
@NoArgsConstructor
@ToString
public class OwnerConfirmSettlementParam {
@NotNull(message = "id不能为空")
@ApiModelProperty(value="列表id",example = "10")
private Integer id;
}
package com.clx.performance.controller.pc.carrier;
import com.clx.performance.service.SettlementOwnerService;
import com.clx.performance.service.settle.SettlementOwnerService;
import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
import com.msl.common.convertor.aspect.UnitCovert;
import com.msl.common.result.Result;
......
package com.clx.performance.controller.pc.owner;
import com.clx.performance.param.pc.owner.OwnerConfirmSettlementParam;
import com.clx.performance.service.settle.SettlementOwnerService;
import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
import com.msl.common.convertor.aspect.UnitCovert;
import com.msl.common.result.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotNull;
@Slf4j
@RestController
@RequestMapping(value="/pc/owner/settlementOwner")
@Validated
@Api(tags = "货主端-货主结算")
@AllArgsConstructor
public class OwnerSettlementOwnerController {
private final SettlementOwnerService settlementOwnerService;
@ApiOperation(value = "结算单详情",notes = "<br>By:李瑞新")
@GetMapping("/getOwnerSettlementOwnerDetail")
@UnitCovert(param = false)
public Result<CarrierSettlementOwnerDetailVO> getOwnerSettlementOwnerDetail(@NotNull(message = "id不能为空") Integer id) {
return Result.ok(settlementOwnerService.getCarrierSettlementOwnerDetail(id));
}
@ApiOperation(value = "确认结算单接口",notes = "<br>By:李瑞新")
@PostMapping("/updateConfirmSettlement")
public Result updateConfirmSettlement(@RequestBody @Validated OwnerConfirmSettlementParam param) {
settlementOwnerService.updateConfirmSettlement(param.getId());
return Result.ok();
}
}
package com.clx.performance.dao.impl;
package com.clx.performance.dao.impl.settle;
import com.clx.performance.dao.SettlementDriverDao;
import com.clx.performance.dao.settle.SettlementDriverDao;
import com.clx.performance.mapper.SettlementDriverMapper;
import com.clx.performance.model.SettlementDriver;
import com.msl.common.dao.impl.BaseDaoImpl;
......
package com.clx.performance.dao.impl;
package com.clx.performance.dao.impl.settle;
import com.clx.performance.dao.SettlementDriverDetailDao;
import com.clx.performance.dao.settle.SettlementDriverDetailDao;
import com.clx.performance.mapper.SettlementDriverDetailMapper;
import com.clx.performance.model.SettlementDriverDetail;
import com.msl.common.dao.impl.BaseDaoImpl;
......
package com.clx.performance.dao.impl;
package com.clx.performance.dao.impl.settle;
import com.clx.performance.dao.SettlementLogDao;
import com.clx.performance.enums.SettlementOwnerEnum;
import com.clx.performance.dao.settle.SettlementLogDao;
import com.clx.performance.mapper.SettlementLogMapper;
import com.clx.performance.model.SettlementLog;
import com.clx.performance.model.SettlementOwner;
import com.msl.common.dao.impl.BaseDaoImpl;
import org.springframework.stereotype.Repository;
......
package com.clx.performance.dao.impl;
package com.clx.performance.dao.impl.settle;
import com.clx.performance.dao.SettlementOwnerDao;
import com.clx.performance.enums.SettlementOwnerEnum;
import com.clx.performance.dao.settle.SettlementOwnerDao;
import com.clx.performance.enums.settle.SettlementOwnerEnum;
import com.clx.performance.mapper.SettlementOwnerMapper;
import com.clx.performance.model.SettlementOwner;
import com.msl.common.dao.impl.BaseDaoImpl;
......@@ -24,4 +24,12 @@ public class SettlementOwnerDaoImpl extends BaseDaoImpl<SettlementOwnerMapper, S
.eq(SettlementOwner::getMergeStatus, SettlementOwnerEnum.MergeStatus.YES.getCode())
.orderByDesc(SettlementOwner::getId));
}
@Override
public boolean updateStatusBySettlementNo(String settlementNo, Integer status) {
return update(lUdWrapper()
.eq(SettlementOwner::getSettlementNo, settlementNo)
.set(SettlementOwner::getStatus, status)
);
}
}
package com.clx.performance.dao.impl;
package com.clx.performance.dao.impl.settle;
import com.clx.performance.dao.SettlementOwnerDetailDao;
import com.clx.performance.dao.settle.SettlementOwnerDetailDao;
import com.clx.performance.mapper.SettlementOwnerDetailMapper;
import com.clx.performance.model.SettlementOwnerDetail;
import com.msl.common.dao.impl.BaseDaoImpl;
......
package com.clx.performance.dao;
package com.clx.performance.dao.settle;
import com.clx.performance.mapper.SettlementDriverMapper;
import com.clx.performance.model.SettlementDriver;
......
package com.clx.performance.dao;
package com.clx.performance.dao.settle;
import com.clx.performance.mapper.SettlementDriverDetailMapper;
import com.clx.performance.model.SettlementDriverDetail;
......
package com.clx.performance.dao;
package com.clx.performance.dao.settle;
import com.clx.performance.mapper.SettlementLogMapper;
import com.clx.performance.model.SettlementLog;
......
package com.clx.performance.dao;
package com.clx.performance.dao.settle;
import com.clx.performance.mapper.SettlementOwnerMapper;
import com.clx.performance.model.SettlementOwner;
......@@ -11,4 +11,6 @@ public interface SettlementOwnerDao extends BaseDao<SettlementOwnerMapper, Settl
List<SettlementOwner> getMergeSettlementNos(String settlementNo);
boolean updateStatusBySettlementNo(String settlementNo, Integer status);
}
package com.clx.performance.dao;
package com.clx.performance.dao.settle;
import com.clx.performance.mapper.SettlementOwnerDetailMapper;
import com.clx.performance.model.SettlementOwnerDetail;
......
package com.clx.performance.service.impl;
package com.clx.performance.service.impl.settle;
import com.clx.performance.service.SettlementDriverDetailService;
import com.clx.performance.service.settle.SettlementDriverDetailService;
import org.springframework.stereotype.Service;
/**
......
package com.clx.performance.service.impl;
package com.clx.performance.service.impl.settle;
import com.clx.performance.service.SettlementDriverService;
import com.clx.performance.service.settle.SettlementDriverService;
import org.springframework.stereotype.Service;
/**
......
package com.clx.performance.service.impl;
package com.clx.performance.service.impl.settle;
import com.clx.performance.dao.SettlementLogDao;
import com.clx.performance.dao.settle.SettlementLogDao;
import com.clx.performance.model.SettlementLog;
import com.clx.performance.service.SettlementLogService;
import com.clx.performance.service.settle.SettlementLogService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
......
package com.clx.performance.service.impl;
package com.clx.performance.service.impl.settle;
import com.clx.performance.service.SettlementOwnerDetailService;
import com.clx.performance.service.settle.SettlementOwnerDetailService;
import org.springframework.stereotype.Service;
/**
......
package com.clx.performance.service.impl;
package com.clx.performance.service.impl.settle;
import com.clx.performance.dao.SettlementLogDao;
import com.clx.performance.dao.SettlementOwnerDao;
import com.clx.performance.dao.settle.SettlementLogDao;
import com.clx.performance.dao.settle.SettlementOwnerDao;
import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.enums.settle.SettlementOwnerEnum;
import com.clx.performance.model.SettlementLog;
import com.clx.performance.model.SettlementOwner;
import com.clx.performance.service.SettlementOwnerService;
import com.clx.performance.struct.SettlementLogStruct;
import com.clx.performance.struct.SettlementOwnerStruct;
import com.clx.performance.service.settle.SettlementOwnerService;
import com.clx.performance.struct.settle.SettlementLogStruct;
import com.clx.performance.struct.settle.SettlementOwnerStruct;
import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
import com.clx.performance.vo.pc.carrier.settle.SettlementLogVO;
import com.msl.common.exception.ServiceSystemException;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
/**
* @author liruixin
......@@ -53,4 +56,16 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
return detail;
}
@Override
public void updateConfirmSettlement(Integer id) {
//结算单详情
SettlementOwner settlementOwner =settlementOwnerDao.getEntityByKey(id).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
//状态判断
if(!Objects.equals(settlementOwner.getStatus(), SettlementOwnerEnum.Status.OWNER_TO_BE_CONFIRMED.getCode())){
throw new ServiceSystemException(PerformanceResultEnum.SETTLEMENT_ORDER_STATUS_CHANGED);
}
//更新状态为待货主付款
settlementOwnerDao.updateStatusBySettlementNo(settlementOwner.getSettlementNo(),SettlementOwnerEnum.Status.SHIPPER_TO_PAYMENT.getCode());
}
}
package com.clx.performance.service;
package com.clx.performance.service.settle;
import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
......@@ -11,4 +11,6 @@ import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
public interface SettlementOwnerService {
CarrierSettlementOwnerDetailVO getCarrierSettlementOwnerDetail(Integer id);
void updateConfirmSettlement(Integer id);
}
package com.clx.performance.struct;
package com.clx.performance.struct.settle;
import com.clx.performance.model.SettlementLog;
import com.clx.performance.vo.pc.carrier.settle.SettlementLogVO;
......
package com.clx.performance.struct;
package com.clx.performance.struct.settle;
import com.clx.performance.enums.SettlementOwnerEnum;
import com.clx.performance.enums.settle.SettlementOwnerEnum;
import com.clx.performance.model.SettlementOwner;
import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
import com.clx.performance.vo.pc.carrier.settle.SettlementMergeVO;
......@@ -25,4 +25,4 @@ public interface SettlementOwnerStruct {
List<SettlementMergeVO> convertToMergeList(List<SettlementOwner> settlementOwners);
}
}
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论