提交 fc300cb1 authored 作者: huyufan's avatar huyufan

Merge remote-tracking branch 'origin/v5.7_break_contract_reverse_20231020' into…

Merge remote-tracking branch 'origin/v5.7_break_contract_reverse_20231020' into v5.7_break_contract_reverse_20231020
......@@ -21,6 +21,7 @@ public enum BreakContractSettlementLogEnum {
PLATFORM_TO_PAYMENT(6, "平台付款"),
OWNER_CONFIRMED_PLATFORM_PAYMENT(7, "货主确认付款"),
COMPLETED(8, "已完结"),
CANCEL(9, "已取消"),
;
......
......@@ -20,6 +20,7 @@ public enum BreakContractSettlementOwnerEnum {
PLATFORM_TO_PAYMENT(50, "待平台付款"),
OWNER_CONFIRMED_PLATFORM_PAYMENT(60, "待货主确认付款"),
COMPLETED(70, "已完结"),
CANCEL(80, "已取消"),
;
......@@ -36,18 +37,5 @@ public enum BreakContractSettlementOwnerEnum {
}
@Getter
@AllArgsConstructor
public enum DeleteStatus {
NO(0, "否"),
YES(1, "是"),
;
private final Integer code;
private final String msg;
}
}
package com.clx.performance.param.pc;
import com.msl.common.base.PageParam;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotBlank;
/**
* @ClassName OrderGoodsLogParam
* @Description
* @Author kavin
* @Date 2023/10/26 16:18
* @Version 1.0
*/
@Getter
@Setter
public class OrderGoodsLogParam extends PageParam {
@NotBlank(message = "货单编号不能为空")
@ApiModelProperty("货单编号")
private String orderGoodsNo;
}
package com.clx.performance.param.pc.breakcontract.carrier;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@Setter
@Getter
@ToString
@NoArgsConstructor
public class CarrierBreakContractSavePayeeParam {
@NotNull(message = "id不能为空")
@ApiModelProperty(value = "id", example = "100")
private Integer id;
@NotBlank(message = "收款人不能为空")
@ApiModelProperty(value = "收款人", example = "收款人")
private String payee;
@NotBlank(message = "收款银行不能为空")
@ApiModelProperty(value = "收款银行", example = "浙江银行")
private String payeeBankName;
@NotBlank(message = "收款银行卡卡号不能为空")
@ApiModelProperty(value = "收款银行卡卡号", example = "62213545878787")
private String payeeBankCardNo;
@NotBlank(message = "付款凭证不能为空")
@ApiModelProperty(value = "付款凭证", example = "/a.png")
private String paymentImg;
@NotBlank(message = "付款银行不能为空")
@ApiModelProperty(value = "付款银行", example = "浙江银行")
private String paymentBankName;
@NotBlank(message = "付款银行卡卡号不能为空")
@ApiModelProperty(value = "付款银行卡卡号", example = "62213545878787")
private String paymentBankCardNo;
}
package com.clx.performance.param.pc.breakcontract.carrier;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import javax.validation.constraints.NotNull;
@Setter
@Getter
@ToString
@NoArgsConstructor
public class CarrierBreakPayeeConfirmParam {
@NotNull(message = "id不能为空")
@ApiModelProperty(value = "id", example = "100")
private Integer id;
}
package com.clx.performance.param.pc.breakcontract.carrier;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import javax.validation.constraints.NotNull;
@Setter
@Getter
@ToString
@NoArgsConstructor
public class CarrierCancelSettlementParam {
@NotNull(message = "id不能为空")
@ApiModelProperty(value = "id", example = "100")
private Integer id;
}
package com.clx.performance.vo.pc;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
/**
* @ClassName OrderGoodsLogVO
* @Description
* @Author kavin
* @Date 2023/10/26 16:11
* @Version 1.0
*/
@Getter
@Setter
public class OrderGoodsLogVO {
@ApiModelProperty("id")
private Integer id;
@ApiModelProperty("货单编码")
private String orderGoodsNo;
@ApiModelProperty("操作人ID")
private Long createBy;
@ApiModelProperty("操作人名称")
private String createName;
@ApiModelProperty("操作类型")
private String type;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("创建时间")
private String createTime;
}
package com.clx.performance.controller.pc;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.OrderGoodsLogParam;
import com.clx.performance.service.OrderGoodsLogService;
import com.clx.performance.vo.pc.OrderGoodsLogVO;
import com.msl.common.base.PageData;
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.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
* @ClassName GoodsOrderController
* @Description
* @Author kavin
* @Date 2023/9/17 17:16
* @Version 1.0
*/
@Slf4j
@RestController
@RequestMapping("/pc/goodsOrderLog")
@Validated
@AllArgsConstructor
@Api(tags = "PC-货单日志")
public class OrderGoodsLogController {
OrderGoodsLogService orderGoodsLogService;
@ApiOperation(value = "货单日志列表", notes = "<br>By:刘海泉")
@PostMapping("/pageOrderGoodsList")
public Result<PageData<OrderGoodsLogVO>> pageOrderGoodsLog(@RequestParam @Validated OrderGoodsLogParam param) {
IPage<OrderGoodsLogVO> page = orderGoodsLogService.pageOrderGoodsLog(param);
return Result.page(page.getRecords(), page.getTotal(), page.getPages());
}
}
package com.clx.performance.controller.pc.breakcontract.carrier;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.breakcontract.carrier.CarrierUploadInvoiceImgParam;
import com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam;
import com.clx.performance.param.pc.breakcontract.carrier.*;
import com.clx.performance.service.breakcontract.BreakContractSettlementOwnerService;
import com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementOwnerDetailVO;
import com.clx.performance.vo.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerVO;
......@@ -67,4 +66,26 @@ public class CarrierBreakContractSettlementOwnerController {
return Result.ok();
}
@ApiOperation(value = "取消结算单",notes = "<br>By:李瑞新")
@PostMapping("/updateCancelSettlement")
public Result updateCancelSettlement(@RequestBody @Validated CarrierCancelSettlementParam param) {
breakContractSettlementOwnerService.updateCancelSettlement(param);
return Result.ok();
}
@ApiOperation(value = "付款",notes = "<br>By李瑞新")
@PostMapping("/saveCarrierBreakContractPayee")
public Result saveCarrierBreakContractPayee(@RequestBody @Validated CarrierBreakContractSavePayeeParam param) {
breakContractSettlementOwnerService.saveCarrierBreakContractPayee(param);
return Result.ok();
}
@ApiOperation(value = "付款确认",notes = "<br>By:李瑞新")
@PostMapping("/updateCarrierBreakContractPayeeConfirm")
public Result updateCarrierBreakContractPayeeConfirm(@RequestBody @Validated CarrierBreakPayeeConfirmParam param ) {
breakContractSettlementOwnerService.updateCarrierBreakContractPayeeConfirm(param);
return Result.ok();
}
}
package com.clx.performance.dao;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.mapper.OrderGoodsLogMapper;
import com.clx.performance.model.OrderGoodsLog;
import com.msl.common.dao.BaseDao;
......@@ -10,4 +11,5 @@ import com.msl.common.dao.BaseDao;
* Time 11:27
*/
public interface OrderGoodsLogDao extends BaseDao<OrderGoodsLogMapper, OrderGoodsLog, Integer> {
Page<OrderGoodsLog> pageOrderGoodsLog(Page page, String orderGoodsNo);
}
......@@ -4,6 +4,7 @@ package com.clx.performance.dao.breakcontract;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.mapper.breakcontract.BreakContractSettlementOwnerMapper;
import com.clx.performance.model.breakcontract.BreakContractSettlementOwner;
import com.clx.performance.param.pc.breakcontract.carrier.CarrierBreakContractSavePayeeParam;
import com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam;
import com.msl.common.dao.BaseDao;
import org.apache.ibatis.annotations.Param;
......@@ -18,4 +19,9 @@ public interface BreakContractSettlementOwnerDao extends BaseDao<BreakContractSe
IPage<BreakContractSettlementOwner> pageCarrierBreakContractSettlementOwnerList(PageCarrierBreakContractSettlementOwnerParam param);
boolean uploadInvoiceImg(@Param("id")Integer id, @Param("invoiceImg")String invoiceImg);
boolean updateStatus(@Param("id")Integer id,@Param("from")Integer from,@Param("to")Integer to);
boolean saveCarrierBreakContractPayee(CarrierBreakContractSavePayeeParam param);
}
package com.clx.performance.dao.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.dao.OrderGoodsLogDao;
import com.clx.performance.mapper.OrderGoodsLogMapper;
import com.clx.performance.model.OrderGoodsLog;
......@@ -13,4 +15,11 @@ import org.springframework.stereotype.Repository;
*/
@Repository
public class OrderGoodsLogDaoImpl extends BaseDaoImpl<OrderGoodsLogMapper, OrderGoodsLog, Integer> implements OrderGoodsLogDao {
@Override
public Page<OrderGoodsLog> pageOrderGoodsLog(Page page, String orderGoodsNo) {
LambdaQueryWrapper<OrderGoodsLog> query = new LambdaQueryWrapper();
query.eq(OrderGoodsLog :: getOrderGoodsNo,orderGoodsNo);
query.orderByDesc(OrderGoodsLog :: getCreateTime);
return baseMapper.selectPage(page,query);
}
}
......@@ -8,6 +8,7 @@ import com.clx.performance.dao.breakcontract.BreakContractSettlementOwnerDao;
import com.clx.performance.enums.BreakContractSettlementOwnerEnum;
import com.clx.performance.mapper.breakcontract.BreakContractSettlementOwnerMapper;
import com.clx.performance.model.breakcontract.BreakContractSettlementOwner;
import com.clx.performance.param.pc.breakcontract.carrier.CarrierBreakContractSavePayeeParam;
import com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam;
import com.msl.common.dao.impl.BaseDaoImpl;
import org.apache.commons.lang3.StringUtils;
......@@ -27,7 +28,6 @@ public class BreakContractSettlementOwnerDaoImpl extends BaseDaoImpl<BreakContra
@Override
public IPage<BreakContractSettlementOwner> pageCarrierBreakContractSettlementOwnerList(PageCarrierBreakContractSettlementOwnerParam param) {
LambdaQueryWrapper<BreakContractSettlementOwner> query = new LambdaQueryWrapper<>();
query.eq(BreakContractSettlementOwner :: getDeleteStatus, BreakContractSettlementOwnerEnum.DeleteStatus.NO.getCode());
query.eq(StringUtils.isNotBlank(param.getOrderNo()),BreakContractSettlementOwner :: getOrderNo,param.getOrderNo());
query.eq(StringUtils.isNotBlank(param.getSettlementNo()),BreakContractSettlementOwner ::getSettlementNo ,param.getSettlementNo());
query.eq(Objects.nonNull(param.getBreakContractPartyType()),BreakContractSettlementOwner :: getBreakContractPartyType,param.getBreakContractPartyType());
......@@ -46,4 +46,27 @@ public class BreakContractSettlementOwnerDaoImpl extends BaseDaoImpl<BreakContra
.set(BreakContractSettlementOwner::getStatus, BreakContractSettlementOwnerEnum.Status.OWNER_TO_BE_CONFIRMED.getCode())
);
}
@Override
public boolean saveCarrierBreakContractPayee(CarrierBreakContractSavePayeeParam param) {
return update(lUdWrapper()
.eq(BreakContractSettlementOwner::getId, param.getId())
.set(BreakContractSettlementOwner::getPayee, param.getPayee())
.set(BreakContractSettlementOwner::getPayeeBankName, param.getPayeeBankName())
.set(BreakContractSettlementOwner::getPayeeBankCardNo, param.getPayeeBankCardNo())
.set(BreakContractSettlementOwner::getPaymentImg, param.getPaymentImg())
.set(BreakContractSettlementOwner::getPaymentBankCardNo, param.getPaymentBankCardNo())
.set(BreakContractSettlementOwner::getPaymentBankName, param.getPaymentBankName())
);
}
@Override
public boolean updateStatus(Integer id, Integer from, Integer to) {
return update(lUdWrapper()
.eq(BreakContractSettlementOwner::getId, id)
.eq(BreakContractSettlementOwner::getStatus, from)
.set(BreakContractSettlementOwner::getStatus, to)
);
}
}
......@@ -96,10 +96,6 @@ public class BreakContractSettlementOwner implements HasKey<Integer> {
@ApiModelProperty("操作人名称")
private String createName;
@TableField("delete_status")
@ApiModelProperty("删除状态 0-否;1-是")
private Integer deleteStatus;
@TableField("create_time")
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
......
package com.clx.performance.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.OrderGoodsLogParam;
import com.clx.performance.vo.pc.OrderGoodsLogVO;
/**
* @author kavin
* Date 2023-10-26
......@@ -7,4 +11,6 @@ package com.clx.performance.service;
*/
public interface OrderGoodsLogService {
void saveLog(String orderGoodsNo,Long userNo,String userName,String type,String remark);
IPage<OrderGoodsLogVO> pageOrderGoodsLog(OrderGoodsLogParam param);
}
package com.clx.performance.service.breakcontract;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.breakcontract.carrier.CarrierUploadInvoiceImgParam;
import com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam;
import com.clx.performance.param.pc.breakcontract.carrier.*;
import com.clx.performance.vo.pc.breakcontract.carrier.CarrierBreakContractSettlementOwnerDetailVO;
import com.clx.performance.vo.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerVO;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
......@@ -21,4 +20,10 @@ public interface BreakContractSettlementOwnerService {
CarrierBreakContractSettlementOwnerDetailVO getCarrierBreakContractSettlementOwnerDetail(Integer id);
void uploadInvoiceImg(CarrierUploadInvoiceImgParam param);
void updateCancelSettlement(CarrierCancelSettlementParam param);
void saveCarrierBreakContractPayee(CarrierBreakContractSavePayeeParam param);
void updateCarrierBreakContractPayeeConfirm(CarrierBreakPayeeConfirmParam param);
}
package com.clx.performance.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.dao.OrderGoodsLogDao;
import com.clx.performance.model.OrderGoodsLog;
import com.clx.performance.param.pc.OrderGoodsLogParam;
import com.clx.performance.service.OrderGoodsLogService;
import com.clx.performance.vo.pc.OrderGoodsLogVO;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
......@@ -27,4 +31,10 @@ public class OrderGoodsLogServiceImpl implements OrderGoodsLogService {
orderGoodsLogDao.saveEntity(log);
}
@Override
public IPage<OrderGoodsLogVO> pageOrderGoodsLog(OrderGoodsLogParam param) {
Page<OrderGoodsLog> page = orderGoodsLogDao.pageOrderGoodsLog(Page.of(param.getPage(), param.getPageSize()),param.getOrderGoodsNo());
return null;
}
}
......@@ -11,8 +11,7 @@ import com.clx.performance.enums.OrderChildLogEnum;
import com.clx.performance.enums.PerformanceResultEnum;
import com.clx.performance.model.breakcontract.BreakContractSettlementLog;
import com.clx.performance.model.breakcontract.BreakContractSettlementOwner;
import com.clx.performance.param.pc.breakcontract.carrier.CarrierUploadInvoiceImgParam;
import com.clx.performance.param.pc.breakcontract.carrier.PageCarrierBreakContractSettlementOwnerParam;
import com.clx.performance.param.pc.breakcontract.carrier.*;
import com.clx.performance.service.breakcontract.BreakContractSettlementLogService;
import com.clx.performance.service.breakcontract.BreakContractSettlementOwnerService;
import com.clx.performance.struct.breakcontract.BreakContractSettlementLogStruct;
......@@ -31,6 +30,7 @@ import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
......@@ -130,6 +130,7 @@ public class BreakContractSettlementOwnerServiceImpl implements BreakContractSe
}
@Override
@Transactional(rollbackFor = Exception.class)
public void uploadInvoiceImg(CarrierUploadInvoiceImgParam param) {
BreakContractSettlementOwner settlementOwner = breakContractSettlementOwnerDao.getEntityByKey(param.getId()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
......@@ -144,4 +145,61 @@ public class BreakContractSettlementOwnerServiceImpl implements BreakContractSe
BreakContractSettlementLogEnum.Type.CREATE_SETTLEMENT.getCode(),BreakContractSettlementLogEnum.Type.CREATE_SETTLEMENT.getMsg(),
OrderChildLogEnum.CreateType.PLATFORM.getCode(),loginUserInfo.getUserNo(),loginUserInfo.getUserName());
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updateCancelSettlement(CarrierCancelSettlementParam param) {
BreakContractSettlementOwner settlementOwner = breakContractSettlementOwnerDao.getEntityByKey(param.getId()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
if(!Objects.equals(settlementOwner.getStatus(), BreakContractSettlementOwnerEnum.Status.TO_BE_LOCKED.getCode())){
throw new ServiceSystemException(PerformanceResultEnum.STATUS_CHANGED);
}
breakContractSettlementOwnerDao.updateStatus(param.getId(),BreakContractSettlementOwnerEnum.Status.TO_BE_LOCKED.getCode(),BreakContractSettlementOwnerEnum.Status.CANCEL.getCode());
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
//保存结算单日志----取消结算单
breakContractSettlementLogService.saveBreakSettlementLog(settlementOwner.getSettlementNo(),
BreakContractSettlementLogEnum.Type.CANCEL.getCode(),BreakContractSettlementLogEnum.Type.CANCEL.getMsg(),
OrderChildLogEnum.CreateType.PLATFORM.getCode(),loginUserInfo.getUserNo(),loginUserInfo.getUserName());
}
@Override
@Transactional(rollbackFor = Exception.class)
public void saveCarrierBreakContractPayee(CarrierBreakContractSavePayeeParam param) {
BreakContractSettlementOwner settlementOwner = breakContractSettlementOwnerDao.getEntityByKey(param.getId()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
if(!Objects.equals(settlementOwner.getStatus(), BreakContractSettlementOwnerEnum.Status.PLATFORM_TO_PAYMENT.getCode())){
throw new ServiceSystemException(PerformanceResultEnum.STATUS_CHANGED);
}
breakContractSettlementOwnerDao.saveCarrierBreakContractPayee(param);
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
//保存结算单日志----平台付款
breakContractSettlementLogService.saveBreakSettlementLog(settlementOwner.getSettlementNo(),
BreakContractSettlementLogEnum.Type.PLATFORM_TO_PAYMENT.getCode(),BreakContractSettlementLogEnum.Type.PLATFORM_TO_PAYMENT.getMsg(),
OrderChildLogEnum.CreateType.PLATFORM.getCode(),loginUserInfo.getUserNo(),loginUserInfo.getUserName());
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updateCarrierBreakContractPayeeConfirm(CarrierBreakPayeeConfirmParam param) {
BreakContractSettlementOwner settlementOwner = breakContractSettlementOwnerDao.getEntityByKey(param.getId()).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
if(!Objects.equals(settlementOwner.getStatus(), BreakContractSettlementOwnerEnum.Status.PLATFORM_CONFIRMED_OWNER_PAYMENT.getCode())){
throw new ServiceSystemException(PerformanceResultEnum.STATUS_CHANGED);
}
breakContractSettlementOwnerDao.updateStatus(param.getId(),BreakContractSettlementOwnerEnum.Status.PLATFORM_CONFIRMED_OWNER_PAYMENT.getCode(),BreakContractSettlementOwnerEnum.Status.COMPLETED.getCode());
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
//保存结算单日志----平台付款
breakContractSettlementLogService.saveBreakSettlementLog(settlementOwner.getSettlementNo(),
BreakContractSettlementLogEnum.Type.PLATFORM_CONFIRMED_OWNER_PAYMENT.getCode(),BreakContractSettlementLogEnum.Type.PLATFORM_CONFIRMED_OWNER_PAYMENT.getMsg(),
OrderChildLogEnum.CreateType.PLATFORM.getCode(),loginUserInfo.getUserNo(),loginUserInfo.getUserName());
//保存结算单日志----已完结
breakContractSettlementLogService.saveBreakSettlementLog(settlementOwner.getSettlementNo(),
BreakContractSettlementLogEnum.Type.COMPLETED.getCode(),BreakContractSettlementLogEnum.Type.COMPLETED.getMsg(),
OrderChildLogEnum.CreateType.PLATFORM.getCode(),loginUserInfo.getUserNo(),loginUserInfo.getUserName());
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论