提交 b4ced68b authored 作者: jiangwenye's avatar jiangwenye

承运端货主结算单信息

上级 31c8e3b3
package com.clx.performance.vo.pc.carrier.settle;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
@NoArgsConstructor
public class CarrierSettlementOwnerCompanyContactVO {
@ApiModelProperty(value = "公司联系人", example = "1.23")
private String companyContact;
@ApiModelProperty(value = "公司联系电话", example = "公司联系人")
private String companyContactMobile;
@ApiModelProperty(value = "公司联系地址", example = "公司联系地址")
private String companyContactAddress;
}
package com.clx.performance.vo.pc.carrier.settle;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
@NoArgsConstructor
public class CarrierSettlementOwnerCompanyVO {
@ApiModelProperty(value = "公司名称", example = "公司名称")
private String companyName;
@ApiModelProperty(value = "企业税号", example = "企业税号")
private String companyTaxCode;
@ApiModelProperty(value = "公司地址", example = "公司地址")
private String companyAddress;
@ApiModelProperty(value = "公司电话", example = "1222222222")
private String companyMobile;
@ApiModelProperty(value = "公司开户行", example = "中国银行")
private String companyBankName;
@ApiModelProperty(value = "公司银行账号", example = "6215454545")
private String companyBankNo;
}
package com.clx.performance.vo.pc.carrier.settle;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
@NoArgsConstructor
public class CarrierSettlementOwnerPayeeVO {
@ApiModelProperty(value = "收款人", example = "收款人")
private String payee;
@ApiModelProperty(value = "收款银行", example = "浙江银行")
private String payeeBankName;
@ApiModelProperty(value = "收款银行卡卡号", example = "62213545878787")
private String payeeBankCardNo;
}
......@@ -3,8 +3,7 @@ package com.clx.performance.controller.pc.carrier;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.owner.PageCarrierSettlementOwnerParam;
import com.clx.performance.service.settle.SettlementOwnerService;
import com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementOwnerVO;
import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
import com.clx.performance.vo.pc.carrier.settle.*;
import com.msl.common.base.PageData;
import com.msl.common.convertor.aspect.UnitCovert;
import com.msl.common.result.Result;
......@@ -12,9 +11,13 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.NotNull;
......@@ -46,5 +49,33 @@ public class CarrierSettlementOwnerController {
return Result.page(page.getRecords(),page.getTotal(),page.getPages());
}
@ApiOperation(value = "货主结算单下载",notes = "<br>By:姜文业")
@PostMapping("/exportCarrierSettlementOwnerPageList")
public void exportCarrierSettlementOwnerPageList(@RequestBody @Validated PageCarrierSettlementOwnerParam param, HttpServletResponse response) throws Exception {
SXSSFWorkbook workbook = settlementOwnerService.exportCarrierSettlementOwnerPageList(param);
response.setHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_OCTET_STREAM_VALUE);
workbook.write(response.getOutputStream());
}
@ApiOperation(value = "货主结算单快递页面开票信息",notes = "<br>By:姜文业")
@GetMapping("/getCarrierSettlementOwnerInvoiceCompany")
@UnitCovert(param = false)
public Result<CarrierSettlementOwnerCompanyVO> getCarrierSettlementOwnerInvoiceCompany(@NotNull(message = "id不能为空") Integer id) {
return Result.ok(settlementOwnerService.getCarrierSettlementOwnerInvoiceCompany(id));
}
@ApiOperation(value = "货主结算单快递页面联系人信息",notes = "<br>By:姜文业")
@GetMapping("/getCarrierSettlementOwnerCompanyContact")
@UnitCovert(param = false)
public Result<CarrierSettlementOwnerCompanyContactVO> getCarrierSettlementOwnerCompanyContact(@NotNull(message = "id不能为空") Integer id) {
return Result.ok(settlementOwnerService.getCarrierSettlementOwnerCompanyContact(id));
}
@ApiOperation(value = "货主结算单付款页面收款人信息",notes = "<br>By:姜文业")
@GetMapping("/getCarrierSettlementOwnerPayee")
@UnitCovert(param = false)
public Result<CarrierSettlementOwnerPayeeVO> getCarrierSettlementOwnerPayee(@NotNull(message = "id不能为空") Integer id) {
return Result.ok(settlementOwnerService.getCarrierSettlementOwnerPayee(id));
}
}
......@@ -20,9 +20,11 @@ import com.clx.performance.service.settle.SettlementLogService;
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.CarrierPageSettlementOwnerVO;
import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
import com.clx.performance.vo.pc.carrier.settle.SettlementLogVO;
import com.clx.performance.utils.excel.ExcelData;
import com.clx.performance.utils.excel.ExcelField;
import com.clx.performance.utils.excel.ExcelSheet;
import com.clx.performance.utils.excel.ExcelUtil;
import com.clx.performance.vo.pc.carrier.settle.*;
import com.clx.performance.vo.pc.owner.settle.OwnerPageSettlementOwnerVO;
import com.clx.performance.vo.pc.owner.settle.SettlementPlatformAccountVO;
import com.clx.user.vo.pc.owner.OwnerBindCardVO;
......@@ -31,9 +33,11 @@ import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil;
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;
import java.util.Objects;
......@@ -201,4 +205,82 @@ public class SettlementOwnerServiceImpl implements SettlementOwnerService {
page.getPages());
return result;
}
@Override
public SXSSFWorkbook exportCarrierSettlementOwnerPageList(PageCarrierSettlementOwnerParam param) {
IPage<SettlementOwner> page = settlementOwnerDao.pageCarrierSettlementOwner(param);
List<CarrierPageSettlementOwnerVO> list = settlementOwnerStruct.convertCarrierList(
page.getRecords());
// 组装表头
List<ExcelField> fieldList = new ArrayList<>();
fieldList.add(new ExcelField(0, "序号", "index", 2000));
fieldList.add(new ExcelField(1, "结算单号", "settlementNo", 5000));
fieldList.add(new ExcelField(2, "开票标识", "invoiceType", 5000));
fieldList.add(new ExcelField(3, "货主编码", "ownerUserNo", 5000));
fieldList.add(new ExcelField(4, "订单编号", "orderNo", 15000));
fieldList.add(new ExcelField(5, "实际净重", "weight", 5000));
fieldList.add(new ExcelField(6, "实际运费金额", "freight", 5000));
fieldList.add(new ExcelField(7, "预付运费金额", "prepayFreight", 5000));
fieldList.add(new ExcelField(8, "货损吨数", "lossWeight", 5000));
fieldList.add(new ExcelField(9, "货损金额", "lossFreight", 5000));
fieldList.add(new ExcelField(10, "结算金额", "settlementFreight", 5000));
fieldList.add(new ExcelField(11, "开票金额", "invoiceFreight", 5000));
fieldList.add(new ExcelField(12, "创建时间", "createTime", 5000));
fieldList.add(new ExcelField(13, "状态", "status", 5000));
// 组装数据
List<List<ExcelData>> dataList = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
CarrierPageSettlementOwnerVO dto = list.get(i);
List<ExcelData> rowData = new ArrayList<>();
rowData.add(new ExcelData(i + 1));
rowData.add(new ExcelData(dto.getSettlementNo()));
rowData.add(new ExcelData(SettlementOwnerEnum.InvoiceType.getMsgByCode(dto.getInvoiceType())));
rowData.add(new ExcelData(String.valueOf(dto.getOwnerUserNo())));
rowData.add(new ExcelData(dto.getOrderNo()));
rowData.add(new ExcelData(dto.getWeight()));
rowData.add(new ExcelData(dto.getFreight()));
rowData.add(new ExcelData(dto.getPrepayFreight()));
rowData.add(new ExcelData(dto.getLossWeight()));
rowData.add(new ExcelData(dto.getLossFreight()));
rowData.add(new ExcelData(dto.getSettlementFreight()));
rowData.add(new ExcelData(dto.getInvoiceFreight()));
rowData.add(new ExcelData(dto.getCreateTime()));
rowData.add(new ExcelData(SettlementOwnerEnum.Status.getMsgByCode(dto.getStatus())));
dataList.add(rowData);
}
ExcelSheet excelSheet = new ExcelSheet("货主结算单", "货主结算单", fieldList, dataList);
//创建excel
return ExcelUtil.create(excelSheet);
}
@Override
public CarrierSettlementOwnerCompanyVO getCarrierSettlementOwnerInvoiceCompany(Integer id) {
//结算单详情
SettlementOwner settlementOwner =settlementOwnerDao.getEntityByKey(id).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
CarrierSettlementOwnerCompanyVO detail = settlementOwnerStruct.convertToCompany(settlementOwner);
return detail;
}
@Override
public CarrierSettlementOwnerCompanyContactVO getCarrierSettlementOwnerCompanyContact(Integer id) {
//结算单详情
SettlementOwner settlementOwner =settlementOwnerDao.getEntityByKey(id).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
CarrierSettlementOwnerCompanyContactVO detail = settlementOwnerStruct.convertToCompanyContact(settlementOwner);
return detail;
}
@Override
public CarrierSettlementOwnerPayeeVO getCarrierSettlementOwnerPayee(Integer id) {
//结算单详情
SettlementOwner settlementOwner =settlementOwnerDao.getEntityByKey(id).orElseThrow(PerformanceResultEnum.DATA_NOT_FIND);
CarrierSettlementOwnerPayeeVO detail = settlementOwnerStruct.convertToPayee(settlementOwner);
return detail;
}
}
......@@ -4,10 +4,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.clx.performance.param.pc.owner.OwnerPaymentSettlementParam;
import com.clx.performance.param.pc.owner.PageCarrierSettlementOwnerParam;
import com.clx.performance.param.pc.owner.PageOwnerSettlementParam;
import com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementOwnerVO;
import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
import com.clx.performance.vo.pc.carrier.settle.*;
import com.clx.performance.vo.pc.owner.settle.OwnerPageSettlementOwnerVO;
import com.clx.performance.vo.pc.owner.settle.SettlementPlatformAccountVO;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
/**
* @author liruixin
......@@ -30,4 +30,15 @@ public interface SettlementOwnerService {
IPage<OwnerPageSettlementOwnerVO> pageSettlementOwner(PageOwnerSettlementParam param);
SXSSFWorkbook exportCarrierSettlementOwnerPageList(PageCarrierSettlementOwnerParam param);
CarrierSettlementOwnerCompanyVO getCarrierSettlementOwnerInvoiceCompany(Integer id);
CarrierSettlementOwnerCompanyContactVO getCarrierSettlementOwnerCompanyContact(Integer id);
CarrierSettlementOwnerPayeeVO getCarrierSettlementOwnerPayee(Integer id);
}
......@@ -2,9 +2,7 @@ package com.clx.performance.struct.settle;
import com.clx.performance.enums.settle.SettlementOwnerEnum;
import com.clx.performance.model.settle.SettlementOwner;
import com.clx.performance.vo.pc.carrier.settle.CarrierPageSettlementOwnerVO;
import com.clx.performance.vo.pc.carrier.settle.CarrierSettlementOwnerDetailVO;
import com.clx.performance.vo.pc.carrier.settle.SettlementMergeVO;
import com.clx.performance.vo.pc.carrier.settle.*;
import com.clx.performance.vo.pc.owner.settle.OwnerPageSettlementOwnerVO;
import com.msl.common.utils.DateStructUtil;
import com.msl.common.utils.DateUtils;
......@@ -31,5 +29,11 @@ public interface SettlementOwnerStruct {
List<OwnerPageSettlementOwnerVO> convertOwnerList(List<SettlementOwner> settlementOwners);
CarrierSettlementOwnerCompanyVO convertToCompany(SettlementOwner settlementOwner);
CarrierSettlementOwnerCompanyContactVO convertToCompanyContact(SettlementOwner settlementOwner);
CarrierSettlementOwnerPayeeVO convertToPayee(SettlementOwner settlementOwner);
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论