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

货主违约接口

上级 0b5aa349
package com.clx.performance.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
import java.util.Arrays;
import java.util.Optional;
public enum BreakContractOwnerRecordEnum {
;
@Getter
@AllArgsConstructor
public enum PayStatus {
NOT(0, "未缴费"),
YES(1, "已缴费"),
;
private final Integer code;
private final String msg;
public static Optional<PayStatus> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
public static String getMsgByCode(int code) {
return getByCode(code).map(PayStatus::getMsg).orElse(null);
}
}
}
package com.clx.performance.param.pc.breakcontract.owner;
public class AA {
}
package com.clx.performance.param.pc.breakcontract.owner;
import com.msl.common.base.PageParam;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@NoArgsConstructor
@ToString
public class PageOwnerBreakContractOwnerRecordParam extends PageParam {
@ApiModelProperty(value = "货主编号", example = "1",hidden = true)
private Integer ownerUserNo;
@ApiModelProperty(value = "订单号", example = "1000000000")
private String orderNo;
@ApiModelProperty(value = "缴费状态:0未缴费;1已缴费", example = "1")
private Integer payStatus;
@ApiModelProperty(value = "开始时间", example = "2012-01-01 00:00:00")
private String beginTime;
@ApiModelProperty(value = "结束时间", example = "2012-01-01 00:00:00")
private String endTime;
}
package com.clx.performance.vo.pc.breakcontract.owner;
import com.msl.common.convertor.type.MoneyOutConvert;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
import java.math.BigDecimal;
/**
* @author liruixin
* Date 2023-10-24
* Time 16:02
*/
@Getter
@Setter
@ToString
@NoArgsConstructor
public class PageOwnerBreakContractOwnerRecordVO {
@ApiModelProperty("违约订单")
private String orderNo;
@ApiModelProperty("违约金")
@MoneyOutConvert
private BigDecimal figure;
@ApiModelProperty("结算单编号")
private String settlementNo;
@ApiModelProperty("缴费状态:0未缴费;1已缴费")
private String payStatusMsg;
@ApiModelProperty("缴费状态:0未缴费;1已缴费")
private Integer payStatus;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("创建时间")
private String createTime;
}
package com.clx.performance.controller.pc.breakcontract.owner;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordParam;
import com.clx.performance.service.breakcontract.BreakContractOwnerRecordService;
import com.clx.performance.vo.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordVO;
import com.msl.common.base.PageData;
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.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j
@RestController
@RequestMapping(value="/pc/owner/breakContract/ownerRecord")
@Validated
@Api(tags = "货主端-违约管理")
@AllArgsConstructor
public class OwnerBreakContractOwnerRecordController {
private final BreakContractOwnerRecordService breakContractOwnerRecordService;
@ApiOperation(value = "列表",notes = "<br>By:李瑞新")
@PostMapping("/pageOwnerRecord")
@UnitCovert(param = false)
public Result<PageData<PageOwnerBreakContractOwnerRecordVO>> pageOwnerRecord(@RequestBody @Validated PageOwnerBreakContractOwnerRecordParam param) {
IPage<PageOwnerBreakContractOwnerRecordVO> page = breakContractOwnerRecordService.pageOwnerRecord(param);
return Result.page(page.getRecords(), page.getTotal(), page.getPages());
}
}
......@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.mapper.breakcontract.BreakContractOwnerRecordMapper;
import com.clx.performance.model.breakcontract.BreakContractOwnerRecord;
import com.clx.performance.param.pc.breakcontract.carrier.PageBreakContractOwnerRecordParam;
import com.clx.performance.param.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordParam;
import com.clx.performance.vo.pc.breakcontract.carrier.BreakContractOwnerRecordVO;
import com.msl.common.dao.BaseDao;
......@@ -17,4 +18,6 @@ public interface BreakContractOwnerRecordDao extends BaseDao<BreakContractOwnerR
IPage<BreakContractOwnerRecordVO> pageByParam(PageBreakContractOwnerRecordParam param);
IPage<BreakContractOwnerRecord> pageOwnerBreakContractOwnerRecordList(PageOwnerBreakContractOwnerRecordParam param);
}
package com.clx.performance.dao.impl.breakcontract;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.dao.breakcontract.BreakContractOwnerRecordDao;
import com.clx.performance.mapper.breakcontract.BreakContractOwnerRecordMapper;
import com.clx.performance.model.breakcontract.BreakContractOwnerRecord;
import com.clx.performance.param.pc.breakcontract.carrier.PageBreakContractOwnerRecordParam;
import com.clx.performance.param.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordParam;
import com.clx.performance.vo.pc.breakcontract.carrier.BreakContractOwnerRecordVO;
import com.msl.common.dao.impl.BaseDaoImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Repository;
import java.util.Objects;
/**
* @author liruixin
* Date 2023-10-24
......@@ -24,4 +29,16 @@ public class BreakContractOwnerRecordDaoImpl extends BaseDaoImpl<BreakContractOw
Page<BreakContractOwnerRecordVO> page = Page.of(param.getPage(), param.getPageSize());
return baseMapper.pageByParam(page,param);
}
@Override
public IPage<BreakContractOwnerRecord> pageOwnerBreakContractOwnerRecordList(PageOwnerBreakContractOwnerRecordParam param) {
LambdaQueryWrapper<BreakContractOwnerRecord> query = new LambdaQueryWrapper<>();
query.eq(StringUtils.isNotBlank(param.getOrderNo()),BreakContractOwnerRecord :: getOrderNo,param.getOrderNo());
query.eq(Objects.nonNull(param.getOwnerUserNo()),BreakContractOwnerRecord :: getOwnerUserNo,param.getOwnerUserNo());
query.eq(Objects.nonNull(param.getPayStatus()),BreakContractOwnerRecord :: getPayStatus,param.getPayStatus());
query.ge(StringUtils.isNotBlank(param.getBeginTime()), BreakContractOwnerRecord:: getCreateTime,param.getBeginTime());
query.le(StringUtils.isNotBlank(param.getEndTime()),BreakContractOwnerRecord :: getCreateTime,param.getEndTime());
query.orderByDesc(BreakContractOwnerRecord::getId);
return baseMapper.selectPage(Page.of(param.getPage(), param.getPageSize()),query);
}
}
......@@ -59,6 +59,10 @@ public class BreakContractOwnerRecord implements HasKey<Integer> {
@ApiModelProperty("结算单编号")
private String settlementNo;
@TableField("pay_status")
@ApiModelProperty("缴费状态:0未缴费;1已缴费")
private Integer payStatus;
@TableField("remark")
@ApiModelProperty("备注")
private String remark;
......
......@@ -3,7 +3,9 @@ package com.clx.performance.service.breakcontract;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.breakcontract.carrier.BreakContractOwnerRecordAddParam;
import com.clx.performance.param.pc.breakcontract.carrier.PageBreakContractOwnerRecordParam;
import com.clx.performance.param.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordParam;
import com.clx.performance.vo.pc.breakcontract.carrier.BreakContractOwnerRecordVO;
import com.clx.performance.vo.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordVO;
/**
* @author liruixin
......@@ -15,5 +17,7 @@ public interface BreakContractOwnerRecordService {
IPage<BreakContractOwnerRecordVO> pageRecord(PageBreakContractOwnerRecordParam param);
IPage<PageOwnerBreakContractOwnerRecordVO> pageOwnerRecord(PageOwnerBreakContractOwnerRecordParam param);
}
......@@ -2,6 +2,7 @@ package com.clx.performance.service.impl.breakcontract;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.order.vo.feign.FeignOrderInfoVO;
import com.clx.performance.dao.breakcontract.BreakContractOwnerRecordDao;
import com.clx.performance.enums.BreakContractRecordEnum;
......@@ -11,18 +12,23 @@ import com.clx.performance.extranal.user.OwnerInfoService;
import com.clx.performance.model.breakcontract.BreakContractOwnerRecord;
import com.clx.performance.param.pc.breakcontract.carrier.BreakContractOwnerRecordAddParam;
import com.clx.performance.param.pc.breakcontract.carrier.PageBreakContractOwnerRecordParam;
import com.clx.performance.param.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordParam;
import com.clx.performance.service.breakcontract.BreakContractOwnerRecordService;
import com.clx.performance.service.impl.UniqueOrderNumService;
import com.clx.performance.struct.breakcontract.BreakContractOwnerRecordStruct;
import com.clx.performance.vo.pc.breakcontract.carrier.BreakContractOwnerRecordVO;
import com.clx.performance.vo.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordVO;
import com.clx.user.vo.feign.OwnerInfoFeignVO;
import com.msl.common.utils.LocalDateTimeUtils;
import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
/**
......@@ -32,6 +38,7 @@ import java.util.Objects;
*/
@Slf4j
@Service
@AllArgsConstructor
public class BreakContractOwnerRecordServiceImpl implements BreakContractOwnerRecordService {
@Autowired
......@@ -44,6 +51,8 @@ public class BreakContractOwnerRecordServiceImpl implements BreakContractOwnerR
@Autowired
private OwnerInfoService ownerInfoService;
private final BreakContractOwnerRecordStruct breakContractOwnerRecordStruct;
@Override
public void saveRecord(BreakContractOwnerRecordAddParam param) {
UserSessionData loginUserInfo = TokenUtil.getLoginUserInfo();
......@@ -91,4 +100,11 @@ public class BreakContractOwnerRecordServiceImpl implements BreakContractOwnerR
LocalDateTimeUtils.convertLocalDateTimeToString(LocalDateTime.now(), LocalDateTimeUtils.DATE_DAY));
}
@Override
public IPage<PageOwnerBreakContractOwnerRecordVO> pageOwnerRecord(PageOwnerBreakContractOwnerRecordParam param) {
IPage<BreakContractOwnerRecord> ownerRecord = breakContractOwnerRecordDao.pageOwnerBreakContractOwnerRecordList(param);
List<PageOwnerBreakContractOwnerRecordVO> ownerRecordVO = breakContractOwnerRecordStruct.covertToOwnerList(ownerRecord.getRecords());
return new Page<PageOwnerBreakContractOwnerRecordVO>().setRecords(ownerRecordVO).setTotal(ownerRecord.getTotal()).setPages(ownerRecord.getPages());
}
}
package com.clx.performance.struct.breakcontract;
import com.clx.performance.enums.BreakContractOwnerRecordEnum;
import com.clx.performance.model.breakcontract.BreakContractOwnerRecord;
import com.clx.performance.vo.pc.breakcontract.owner.PageOwnerBreakContractOwnerRecordVO;
import com.msl.common.utils.DateStructUtil;
import com.msl.common.utils.DateUtils;
import org.mapstruct.IterableMapping;
import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import org.mapstruct.Named;
import java.util.List;
@Mapper(componentModel = "spring", uses = DateStructUtil.class, imports = {BreakContractOwnerRecordEnum.class, DateUtils.class})
public interface BreakContractOwnerRecordStruct {
@Named("toBaseVo")
@Mapping(target = "payStatusMsg", expression = "java(BreakContractOwnerRecordEnum.PayStatus.getMsgByCode(detail.getPayStatus()))")
PageOwnerBreakContractOwnerRecordVO convert(BreakContractOwnerRecord detail);
@IterableMapping(qualifiedByName = "toBaseVo")
List<PageOwnerBreakContractOwnerRecordVO> covertToOwnerList(List<BreakContractOwnerRecord> list);
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论